اذهب الي المحتوي
أوفيسنا

عدد السجلات في النموذج الفرعي


شامل2

الردود الموصى بها

السلام عليكم

قاعدة بيانات اكسس فيها نموذج رئيسي اسمه Search_All

ونموذج فرعي مبني على استعلام  اسم الاستعلام Name_All

كيف يمكن اظهار عدد السجلات على النموذج الرئيسي اذا تم عمل تصفية للبيانات؟

رابط هذا التعليق
شارك

وعليكم السلام:smile:

 

عدة طرق تجي على بالي:

1. في النموذج الفرعي (اسمه مثلا s_Search_All) ، اعمل حقل لحساب عدد السجلات ولنسميه s_count ، ويمكنك عمله هكذا:

=Count(*)

وفي النموذج الرئيسي تعمل حقل يأخذ قيمة الحقل اعلاه ، هكذا:

=IIf(IsError([s_Search_All]![s_count]),0,[s_Search_All]![s_count])

والشكرا لأخي رمهان على هذه المعادلة ، والتي فائدتها عندما لا تكون سجلات في النموذج الفرعي ، لا نحصل على خطأ

 

2. تستطيع ان تعمل تحسب عدد السجلات من الاستعلام مباشرة ، هكذا (ويعتمد على معايير الاستعلام ، فقد يجب عليك وضع المعيار في المعادله):

=dcount("*","Name_All")

 

3. تستطيع ان تحسب عدد سجلات النموذج الفرعي هكذا ، بحيث يكون اسم الحقل في النموذج الرئيسي SubForm_Records:

dim rst as dao.recordset
set rst=me.[s_Search_All]![s_count].recordsetclone
rst.movelast:rst.movefirst
me.SubForm_Records=rst.recordcount

rst.close: set rst=nothing

 

 

جعفر

  • Like 3
رابط هذا التعليق
شارك

30 دقائق مضت, jjafferr said:

ارفق برنامجك للنظر فيه:smile:

 

جعفر

السلام عليكم

 

لا يمكن فحجم الملف اكثر من 300 ميكا بايت

صورة اخرى لتوضيح المطلوب

4.JPG

تم تعديل بواسطه شامل2
رابط هذا التعليق
شارك

7 ساعات مضت, jjafferr said:

طيب ممكن ترفق SQL الاستعلام Name_All

SELECT [na1] & " " & [na2] & " " & [na3] & " " & [na4] AS Name_Stud, NameStude.ns, clss.الشعبة, NameStude.np, NameStude.nc, NameStude.Na1, NameStude.Na2, NameStude.Na3, NameStude.Na4, NameStude.[المدرسة التي جاء منها], class.الصف, subj.الفرع, [الصف] & " " & [الفرع] AS Al_Saf
FROM subj INNER JOIN (clss INNER JOIN (class INNER JOIN NameStude ON class.nc = NameStude.nc) ON clss.ns = NameStude.ns) ON subj.np = NameStude.np
WHERE ((([Na1] & " " & [Na2] & " " & [Na3] & " " & [Na4] & " " & [Na5] & " " & [الصف] & " " & [الفرع] & " " & [المدرسة التي جاء منها] & " " & [clss]![ns]) Like "*" & [Forms]![Search_All]![Teaxt1].[Text] & "*"))
ORDER BY [na1] & " " & [na2] & " " & [na3] & " " & [na4];

 

رابط هذا التعليق
شارك

إليك هذه التعديل على مثال في أحد مشاركاتك

726.نقل موشر الماوس بعد التحديث.accdb.zip

 

أنشأت دالة تعيد السجلات للنموذج الذي يمرر عليها.. عند تمرير نموذج فرعي لا يكفي تمرير اسم التابع بل نحتاج إلى المنهج Form ؛ وعليه يكون الممرر هو ([SubFormName].[Form])

هذه الدالة تنفع في أي نموذج وتمرر على أنها مصدر بيانات عنصر التحكم ولا يلزم وضعها في حدث..

Function RecCounter(objMe As Object)
'-- special records counter
    Dim CrntRcd, RcdCnt
    CrntRcd = objMe.CurrentRecord
    RcdCnt = objMe.RecordsetClone.RecordCount
    If objMe.NewRecord Then
        RecCounter = CrntRcd & " من " & RcdCnt + 1
    Else
        RecCounter = CrntRcd & " من " & RcdCnt
    End If
End Function

 

  • Like 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information