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

استعمال فلتر between في الدوال


AliAli47

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

5 ساعات مضت, AliAli47 said:

اريد استعمال فلتر between date1 and date 2 

في الدوال مثلا dlookup هل يمكنني ذلك؟

من وجهة نظري المتواضعة لن نستفيد لان هذه الدالة لها طريقة في العمل حيث ترجع قيمة حقل واحد او عدة حقول * في نفس السجل بناء على المعايير المحددة

DLookup( expr, domain, [criteria] )
expr = الحقل المطلوب ارجاع قيمته
domain = المجال قد يكون جدول او استعلام
criteria = المعيار وهو اختياري ويكتب بشكل مختلف وفقا لنوع الحقل

بينما between and نستخدمها للحصول على سجلات محددة ببداية ونهاية قد تكون النتيجة سجل واحد او اكثر او لا سجلات وفقا للنطاق المحدد من الى

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

لذا اذا اردنا الحصول على قيمة صحيحة نستخدم معيار فريد

وبناء عليه اشرح فكرتك والنتيجة التي تريدها فقد تجد حل اكثر فاعليه

تحياتي

ــــــــــــ

* - يوجد شرح في الموقع لاستخدامها لعدة حقول بواسطة الاستاذ @jjafferr

 

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

الفكرة هي اني اريد جمع عدة حقول ب دالة dsum  والفلترة تكون بمعيار between

في هاذه الحالة يمكنني استعمال between في  الاستعلام 

لكني اريد اختصار الطريق باستعمال دالة dsum فقط

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

اجعل مصدر سجلات النموذج استعلام وضع فيه معيار الفلترة

Between Nz([forms]![frm_2]![st];"01/01/1900") And Nz([forms]![frm_2]![en];"01/01/2100")

في النموذج اضف مربعي نص للتاريخ من الى

اضف مربع نص ثالث واجعل قيمته تساوي

=Nz(DSum("[Total]";"q_1");0)

هذه الطريقة الاسهل وبدون الحاجة لمعيار الدالة dsum

مرفق مثال بسيط

 

test.accdb

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

10 minutes ago, kha9009lid said:

اجعل مصدر سجلات النموذج استعلام وضع فيه معيار الفلترة

Between Nz([forms]![frm_2]![st];"01/01/1900") And Nz([forms]![frm_2]![en];"01/01/2100")

في النموذج اضف مربعي نص للتاريخ من الى

اضف مربع نص ثالث واجعل قيمته تساوي

=Nz(DSum("[Total]";"q_1");0)

هذه الطريقة الاسهل وبدون الحاجة لمعيار الدالة dsum

مرفق مثال بسيط

 

test.accdb 428 kB · 1 download

اظن انك لم تفهم قصدي 

اريد استعمال dsum فقط يعني الفلترة تكون في معيار الدالة 

يعني هاذا الاستغناء كليا عن الاستعلام

 

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

منذ ساعه, AliAli47 said:

اظن انك لم تفهم قصدي 

فعلا لم افهم من الوهلة الاولى اعذرني انا فهمي على قدي

طيب ممكن نعمل الامر

Me.total2 = DSum("[Total]", "tbl_1", "[Date_of_invoice]  between #" & Format([Forms]![frm_2]![st], "mm/dd/yyyy") & "# and #" & Format([Forms]![frm_2]![en], "mm/dd/yyyy") & "#")

مرفق ملف للتجربة لعله المطلوب

 

test2.accdb

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

40 minutes ago, kha9009lid said:

فعلا لم افهم من الوهلة الاولى اعذرني انا فهمي على قدي

طيب ممكن نعمل الامر

Me.total2 = DSum("[Total]", "tbl_1", "[Date_of_invoice]  between #" & Format([Forms]![frm_2]![st], "mm/dd/yyyy") & "# and #" & Format([Forms]![frm_2]![en], "mm/dd/yyyy") & "#")

مرفق ملف للتجربة لعله المطلوب

 

test2.accdb 420 kB · 1 download

شكرا جزيلا لك 🙏

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

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information