وظيفة دالة DCOUNT
تقوم دالة Dcount بتعداد عدد الخلايا الموجودة فى جدول أو استعلام معين والتى تتطابق مع الشروط التى نريدها (خاصية الشروط اختيارية ومن ثم فيمكن للدالة تعداد جميع خلايا حقل معين )بناء الدالة DCOUNT
DCount ( expression , domain , [criteria] )
expression = الحقل الذى نريد حساب عدد السجلات الخاصة به.
domain= اسم الجدول او الاستعلام
Criteria = الشرط او المعيار وهو اختياري
ملحوظة:
- إذا كنت تريد ببساطه حساب كل السجلات في المجال domain دون تحديد اي شروط أو معايير فاستخدم الدالة count .
- لا تحسب الدالة DCount السجلات التي تحتوي علي قيم خاليه في الحقل المشار اليه بواسطة expression
- لجعل الدالة Dcount تقوم بحساب السجلات الفارغة وعدها نقوم باستخدام حرف البدل علامة النجمة (*)
- يمكن وضع اسم الجدول أو الحقل داخل اقواس مضلعة أو بدونها
لدينا في قاعدة البيانات هذه جدول واحد فقط
هو جدول الطلاب students وكما
هو موضح بالشكل به عدد 10 سجلات فقط. وسوف نستخدم هذا الجدول لاجراء بعض وظائف الدالة dcount عليه
نقوم بإنشاء نموذج form في وضع التصميم form design وذلك لاستخدامه في عمل الاحصائيات التي نحتاجها في
قاعدة البيانات . ونلاحظ أن هذا النموذج form غير مرتبط بأى جدول او استعلام
ثم نقوم من التبويب design
بالضغط على textbox وذلك
لادراج مربع نص ووضعه في
النموذج
نضغط على مربع النص ثم من Property sheet ومن التبويب Data نضغط على ... الثلاث نقاط الموجودة بجوار control source
لنفتح expression
builder ثم
نكتب الدالة count بلا
أي شروط كما هو موضح وذلك لمعرفة جميع أعداد الطلاب الموجودين بجدول students
,نلاحظ أننا قمنا باختيار الحقل id هنا ويمكن اختيار أي حقل آخر لا يحتوي على
قيم فارغة.
نلاحظ عند الانتقال إلى وضع form
view انه
تم حساب عدد الطلاب كما هو موضح.
ملاحظة هامة: يمكن استخدام رمز النجمة (*) كما
هو موضح بدلا من حقل Id
لمعرفة اجمالى
أعداد الطلاب بالجدول.
أما إذا أردنا معرفة عدد الطلاب الحاصلين على مجموع درجات أعلى من 90 درجة فيجب هنا استخدام
الشروط أو
المعايير
ونلاحظ هنا أن المعيار هو totalscore=90 حيث totalscoreاسم
الحقل الذى به الدرجات
فنلاحظ أنه تم حساب عدد الطلاب الذين لهم المجموع =90 وهم عدد 2طالب
هنا نريد أن يتم حساب أعداد الطلاب الحاصلين على مجموع معين وهذا المجموع يعتمد على ما يتم إدخاله من قبل المستخدم في مربع النص ..لذا نقوم أولاً بتسمية مربع النص وهنا قمنا بتسميته باسم degree
ومن data نفتح expression builder ثم
نقوم بكتابة المعادلة ونلاحظ في هذه المعادلة أن totalscore وهو الحقل الموجود به الدرجات يساوى مربع
النص degrees
فعندما قمنا بإدخال مجموع معين وليكن 80 قامت دالة dcount بحساب عدد الطلاب الحاصلين على هذا المجموع وهو 3طلاب
لابد من عمل تحديث او refresh حتى
يتم اظهار العدد في كل مرة نقوم فيها بتغيير المجموع الذى نقوم بادخاله لذا
نقوم بعمل ماكرو يعمل after
update
نعمل requey لمربع النص degree
فى حالة ان الشرط يكون نص وليس رقم
في الأمثلة السابقة قمنا بعمل حساب عدد متغيرات رقمية أما إذا أردنا بعمل
حساب لعدد متغير نصى فنقوم بوضع علامة اقتباس مفردة ‘ قبل النص وبعده
نلاحظ هنا اننا قمنا بوضع علامة اقتباس مفردة بين اسم المتغير الشرطي النصى وهو الجيزة
‘الجيزة’ فقمنا بوضعها بين علامتى
اقتباس مفردة هكذا
تم حساب عدد الطلاب المقيمين بالجيزة وظهر
عددهم يساوى 4 طلاب
فى حالة القائمة المنسدلة
في هذا المثال لدينا قائمة منسدلة تحتوى على نوع الطلاب سواء ذكر او انثى ونريد معرفة أعداد الطلاب طبقا للنوع .
نقوم بإعادة تسمية القائمة المنسدلة وليكن
اسمها stgender
نلاحظ هنا ان حقل gender=stgender حيث
ان حقل gender هو
الحقل الذى يحتوى على النوع في جدول الطلاب students
عند اختيار نوع الطلاب من القائمة المنسدلة ذكر نلاحظ أن أعداد الطلاب
يساوى 6
لا تنسى عمل ماكرو بعد التحديث كما سبق الحديث
عنه
نعمل requery للقائمة المنسدلة stgender
فى حالة حقل التاريخ
في حالة حقل التاريخ date يتم وضع التاريخ بين علامتي # كما هو موضح بالمثال
السلام عليكم
ردحذفنبى طريقة عرض فورم الاحصائيات لبيانات سنة محددة مثل نختار السنة يتم عرض جميع البيانات الموجودة في الفورم لسنة المطلوبة مثل عدد الطلاب الموجدين في المدرسة 1000 طالب والطلاب منقسمين في التسجيل كل حسب السنة نبى طريقة اظهار السنة المحددة لا جميع الاحصائيات من ذكر وانتى والدرجات
شكرا لك
ردحذفهل بإمكاني وضع معيار لنص بجزء منه بغض النظر عن التكملة في دالة dcount مثل
like 'عبد' & '*'
جربت كتابة هذا المعيار ولم أنجح
لك جزيل الشكر