أقسام الوصول السريع (مربع البحث)

إظهار عدد السجلات dcount

دالة DCount، الأداة السحرية التي تساعدك على إظهار عدد السجلات في قاعدة بياناتك. إنها ليست مجرد دالة رياضية عادية، بل هي نافذتك لرؤية الصورة الكبيرة. باستخدام DCount، يمكنك معرفة عدد السجلات التي تلبي معايير معينة، مما يمنحك القدرة على اتخاذ قرارات مدروسة تعتمد على بيانات دقيقة.

دالة dcount في الاكسس
دالة dcount

إظهار عــدد السجــلات فــي نموذج الاكسس

تخيل أنك تعمل على مشروع جديد، وتحتاج إلى معرفة عدد العملاء الذين قاموا بشراء منتج معين. باستخدام DCount، يمكنك الحصول على هذا الرقم بسرعة، مما يوفر لك الوقت والجهد ويعطيك المعلومات التي تحتاجها لتحديد استراتيجياتك المستقبلية.

في هذه الرحلة سنستكشف كيفية استخدام DCount بفعالية، لنفتح أمامنا آفاقًا جديدة لفهم البيانات وتحليلها. فلنبدأ!

في هذا الدرس سنتعلم كيفية إظهار عدد السجلات (أو الصفوف) في قاعدة البيانات الخاصة بنموذج الاكسس. هذه المعلومة مفيدة للمستخدمين للتعرف على حجم البيانات المتاحة في النموذج.

ماهي دالة DCount

يمكننا الحصول على عدد السجلات باستخدام دالة خاصة تسمى "dcount". هذه الدالة ترجع عددًا صحيحًا يمثل إجمالي عدد السجلات في مصدر البيانات المرتبط بالنموذج.

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

الدالة : DCount(Expression, Table, Criteria)

حيث:

Expression: التعبير الذي سيتم تقييمه لكل سجل في الجدول أو الاستعلام لتحديد ما إذا كان السجل سيتم تضمينه في العد.

هناك بعض النقاط الأساسية لتوضيح استخدام التعبير (Expr) في دالة DCount:

  • التعبير (Expr) يُعرف المعلومات التي تريد عدها. وهذا يمكن أن يأخذ عدة أشكال:
  • اسم حقل في الجدول أو الاستعلام، مثل "ProductName"
  • معادلة حسابية على الحقول، مثل "Price * Quantity"
  • قيمة ثابتة، مثل 100 أو "Blue"
  • دالة مستخدمة للمعالجة، مثل "Left([Description], 10)"

التعبير (Expr) لا يمكن أن يكون دالة تجميعية مثل SUM() أو AVG()، فهذه الدوال تعمل على مجموعات من البيانات بشكل مختلف. بدلاً من ذلك، يمكن استخدام DCount للعد، ثم إجراء المزيد من الحسابات على النتائج.

إذا كان التعبير (Expr) يتضمن دالة، فيمكن أن تكون إما دالة مُعرّفة مسبقاً في Access أو دالة مُعرّفة من قبل المستخدم. التعبير (Expr) يوفر المرونة لتحديد بدقة البيانات التي ترغب في عدها باستخدام دالة DCount. هذا يجعلها أداة قوية للتحليل الإحصائي والتقارير.

  • Domain: هي قيمة معينة لكنها تكون نصية تحدد مجموعة السجلات في مجال محدد وتمثله، والتي يمكن أن تكون إما جدول أو استعلام.

Expr و Domain هما قيم إلزامية يجب إدراجهما في الدالة.

Criteria: هي قيمة اختيارية (قد توضع أو لا توضع)، وهي معيار يتم استخدامه لتحديد مجال تطبيق الدالة. يمكن اعتبارها بمثابة شرط مناظر لعبارة WHERE في SQL.

في حالة عدم إدراج Criteria، هنا سيتم تطبيق الدالة. إذا تم إدراج حقل في Criteria ولكن هذا الحقل غير موجود في Domain، ستكون القيمة المعادة من الدالة null.

لذلك يجب أن يكون أي حقل موجود في Criteria مدرجًا أيضًا في Domain. و كل من Expr و Domain قيم اجبارية لابد من ادراجها فى الدالة ، أما القيمة التالية Criteria فهي خيارية

Criteria : قيمة خيارية ( قد توضع و قد لا توضع ) ، و هي معيار يوضع لتحديد مجال تطبيق الدالة ، و يمكن اعتبارها كشرط مناظر ل WHERE في عبارة SQL ، و في حالة عدم ادراجها يتم تطبيق الدالة علي المجال بأكمله.

ملاحظات:

عندما تريد معرفة عدد السجلات في مجال معين دون الحاجة إلى معرفة القيم الفعلية لتلك السجلات، فيمكنك استخدام دالة dcount، هذه الدالة مصممة خصيصًا للحصول على عدد السجلات بشكل سريع وكفء.

إذا كنت ترغب ببساطة في عد جميع السجلات في تقرير، فاستخدام دالة Count هو الخيار الأنسب. هذه الدالة مصممة بشكل مباشر للحصول على إجمالي عدد السجلات، دون الحاجة إلى معالجة أية تعبيرات أو شروط إضافية.

في حال كنت ترغب في القيام بالعد داخل الكود البرمجي أو الماكرو، فيستحسن استخدام dcount بدلاً من Count. هذا لأن dcount توفر مزيدًا من المرونة والتحكم عند إجراء العمليات الحسابية في الداخل.

ويمكنك استخدام dcount للحصول على عدد السجلات التي تحتوي على حقل معين، حتى إذا لم يكن هذا الحقل موجودًا في مصدر البيانات الأساسي الذي تعمل عليه.

تجدر الإشارة إلى أن dcount لا تحسب السجلات التي تحتوي على قيم Null، إلا إذا كان التعبير المستخدم هو وفي هذه الحالة سيتم احتساب جميع السجلات بما في ذلك تلك التي تحتوي على قيم Null.

مثال توضيحي لاستخدام دالة dcount:

لنفترض أننا لدينا جدول بيانات يسمى "المبيعات" يحتوي على الحقول التالية: "المنطقة"، "المنتج"، "الكمية"، و"الإيرادات".

إذا أردنا معرفة عدد المناطق المختلفة الموجودة في الجدول، يمكننا استخدام الدالة dcount كما يلي:

dcount([المنطقة])

هذا سيعطينا إجمالي عدد المناطق المختلفة الموجودة في الجدول، دون الحاجة إلى استخراج قائمة بالمناطق.

كذلك إذا أردنا معرفة عدد المنتجات المختلف الموجودة في الجدول، فيمكننا استخدام:

dcount([المنتج])

هذه الدالة ستحسب عدد المنتجات المختلفة بشكل مباشر. بالإضافة إلى ذلك لو أردنا معرفة عدد السجلات التي لها قيمة معينة في حقل "المنطقة"، فيمكننا استخدام:

dcount([المنطقة]='شرق')

هذا سيعطينا عدد السجلات التي تحتوي على قيمة "شرق" في حقل "المنطقة".

كما ترى dcount توفر طريقة سريعة وبسيطة للحصول على إحصائيات حول البيانات دون الحاجة إلى معالجة البيانات بشكل مفصل.

حساب عدد السجلات تحتوى على قيمة في أكثر من حقل

لحساب عدد السجلات التي تحتوي على قيمة محددة في أكثر من حقل باستخدام دالة dcount، يمكنك استخدام معايير متعددة داخل دالة dcount.

هناك عدة طرق لتحقيق ذلك:

باستخدام المعايير المتعددة مباشرة في دالة dcount:

الدالة:

dcount([المنطقة]='شرق' && [المنتج]='منتج A')

هذا سيعطيك عدد السجلات التي تحتوي على قيمة "شرق" في حقل "المنطقة" و"منتج A" في حقل "المنتج".

باستخدام تعبير منطقي ضمن دالة dcount:

dcount(iif([المنطقة]='شرق' && [المنتج]='منتج A', 1, 0))

في هذه الحالة، تستخدم دالة iif لإنشاء مصفوفة منطقية (1 أو 0) بناءً على المعايير المحددة. ثم تستخدم دالة dcount لحساب عدد القيم الموجودة في هذه المصفوفة والتي تساوي 1.

باستخدام دالة filter مع دالة dcount:

dcount(filter([المنطقة]='شرق' && [المنتج]='منتج A'))

تستخدم دالة filter لإنشاء مصفوفة جديدة تحتوي على السجلات التي تطابق المعايير المحددة، ثم تستخدم دالة dcount لحساب عدد السجلات في هذه المصفوفة.

كل هذه الطرق ستؤدي إلى نفس النتيجة - الحصول على عدد السجلات التي تحتوي على قيم محددة في أكثر من حقل. يمكنك اختيار الطريقة التي تناسب تفضيلاتك ونمط كتابة الصيغة الخاص بك.

  • Table: اسم الجدول أو الاستعلام الذي سيتم العد من خلاله.

Criteria: نطاق البيانات الذي سيتم استخدامه لتحديد السجلات التي سيتم تضمينها في العد.

يمكن استخدام دالة DCount للقيام بالآتي:

الحصول على عدد السجلات في جدول أو استعلام مع تحديد شروط معينة:

Dim NumRecords As Long
NumRecords = DCount("*", "Customers", "City = 'London'")

هذا سيعطينا عدد السجلات في جدول Customers حيث قيمة الحقل City هي 'London'.

العد التراكمي للسجلات في تقرير أو نموذج:

Private Sub Command1_Click()
Dim TotalRecords As Long
TotalRecords = DCount("*", "Customers")
MsgBox "Total number of customers: " & TotalRecords
End Sub
تعليقات