السلام عليكم
في قاعدة البيانات المرفقة، أود عند التنقل في بين السجلات في النوذج الرئيسي Table1، أن يقوم بحساب عدد السجلات الظاهرة في النموذج الفرعي Table1_History، على ان تظهر النتيجة في الحقل المسمى بـ Count في النموذج الرئيسي.
تحيااااتي
السلام عليكم
في قاعدة البيانات المرفقة، أود عند التنقل في بين السجلات في النوذج الرئيسي Table1، أن يقوم بحساب عدد السجلات الظاهرة في النموذج الفرعي Table1_History، على ان تظهر النتيجة في الحقل المسمى بـ Count في النموذج الرئيسي.
تحيااااتي
وعليكم السلام اختي :)
1. غيري اسم الحقل من count الى counter ، لأن count احد اوامر اكسس ،
2. استخدمي هذا الكود في الحال للنموذج الرئيسي:
Private Sub Form_Current()
Me.Counter = Me.Table1_History.Form.RecordsetClone.RecordCount
End Subجعفر
السلام عليكم
شكراً اخي جعفر على الإجابة..
في الحقيقة لقد وضعت مثال مصغر لما أريد ولكن مثالي كان خاطئ، والنتيجة الإجابة لم تكن صحيحة بالطبع.. وكنت أتوقع الجواب بإستخدام دالة DCount (أعتذر عن هذا الخطأ)..
في الملف المرفق بعد التعديل، أود حساب Dox في النموذج الفرعي، بحيث عندما يكون السجل الحالي في النموذج الرئيسي Passport تظهر النتيجة في الحقل Counter عدد
الـ Passport في النموذج الفرعي، وهكذا..
أتمنى أن أجد الإجابة المنشودة.
مع جزيل الشكر.
تم تعديل هذه المشاركة بواسطة sweety78 في 5 سبتمبر 2014 في 23:58
تفضلي اختي ، الكود المعدل ، بالشرح:
Private Sub Form_Current()
'take a Recordset clone of the subform,
'this way we don't have to visit the table
Set rst = Me.Table1_History.Form.RecordsetClone
'move the cursor to the 1st Record, by reading all the Records
rst.MoveLast: rst.MoveFirst
'set a temporary counter to Zero
my_Counter = 0
'loop through the subform Records
For i = 1 To rst.RecordCount
'Read the Dox value from the main Form, which is Me.Dox
'compare it to the subform values of the Recordset, which is rst!Dox,
'if they match, add one to the temporary counter, my_Counter
If Me.Dox = rst!Dox Then
my_Counter = my_Counter + 1
End If
'move to the next Record of the subform
rst.MoveNext
Next i
'show this temporary counter value, in the main Form field, Counter
Me.Counter = my_Counter
End Subجعفر
السلام عليكم اخ جعفر
شكراً على تجاوبك
بالظبط هذا ما احتاجه والكود يعمل بشكل سليم.
شكراً جزيلاً
حياك الله أختي :)
إجابة على استفسارك عن DCount ، فطبعا ممكن استخدامها ، ولكني في مثل هذه الحالات لا افضل استخدمها ، ورجاء زيارة مشاركتي على هذا الرابط لمعرفة السبب:
/index.php/topic/278832-زر-امر/?p=1344505
جعفر
تم تعديل هذه المشاركة بواسطة jjafferr في 8 سبتمبر 2014 في 06:53
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…