التخطي إلى المحتوى الرئيسي

MS Access: DLookup Function دالة


MS AccessDLookup Function
تقوم هذة الدالة باسترجاع (احضار) قيمة موجودة في جدول او استعلام معين
 تستخدم هذة الدالة عندما  نعمل في نموذج او تقرير ونريد احضار قيمة من جدول او استعلام لا علاقة له بالنموذج او التقرير الحالي، وممكن ان تتم عملية استرجاع او احضار القيمة بادخال شرط ( عندما يتحقق شرط معين) مثلا احضر قيمة رقم الهاتف 
 للشخص الذي اسمة احمد من جدول دليل الهاتف

الصيغة
DLookup("FieldName" , "TableName" , "creteria")

FieldName = المتغير الذي نتعامل معه (رقم الهاتف) حسب المثال اعلاه
TableName=  اسم الجدول او الاستعلام (دليل الهاتف) حسب المثال
 criteria = الشرط او المعيار ( احمد) حسب المثال

   اذا كان الشرط = رقم

DLookup("FieldName" , "TableName" , "n")

=DLookUp("nam","table1","id= 15")

اذا كان المعيار مستمد من مربع نص في نموذج او تقرير
=DLookUp("nam","table1","id= " & [box1])
اذا كان المعيار مستمد من مربع نص في نموذج او تقرير اخر  (بشرط ان يكون مفتوح)
=DLookUp("nam","table1","id= " & [Forms]![Form1]![box1])


 اذا كان الشرط = نص


DLookup("FieldName" , "TableName" , "Criteria= 'string'")
 يجب مراعاة الفاصلة العلوية/ علامة الاقتباس المفردة 
اذا كان المعيار مستمد من مربع نص في نموذج او تقرير
=DLookUp("[dat]","[table1]","nam ='Ali'")
DLookup("[dat]", "[table1]", "nam ='" & [box2] & "'")

اذا كان المعيار مستمد من مربع نص في نموذج او تقرير اخر (بشرط ان يكون مفتوح)
DLookup("[dat]", "[table1]", "nam ='" & [Forms]![Form1]![box2] & "'")



 اذا كان الشرط = تاريخ

DLookup("FieldName" , "TableName" , "Criteria= #date#")
يتم وضع قيمة التاريخ بين علامتي # حتى يتم تعريفه انه تاريخ
DLookup("nam", "table1", "dat= #" & [box3] & "#")










تعليقات

  1. السلام عليكم
    شكرا على دقتك في الشرح واسأل الله لك التوفيق
    نفذت خطوات ووجهتني مشكلة في (الشرط = تاريخ )
    بفرض اني لدي بالجدول اسم "علي" و تاريخه 1/7/2017
    لا يظهر في البحث .
    واذا عدلت التاريخ الى 7/1/2017
    يظهر علي.
    اعتقد ان المشكلة في فورمات التاريخ dd/mm/yyy
    كيف احل المشكلة.
    شكرا لطولة بالك

    ردحذف
  2. شكرا شرح وافي

    ردحذف
  3. اولاا جزاك الله كل خير
    ثانيا كيف ممكن اجمع الشرط يكون نص وتاريخ ووقت - يعني - عندي نظام حجز قاعة مؤتمرات - عندي اسم القاعة وتاريخ الحجز من وتاريخ الى ووقت من كذا الى كذا - المطلوب ان تظهر رسالة للمستخدم انه اذا كان هناك حجز سابق ان تيظهر " القاعة محجوزة" او "متوفرة "
    اذا تكرمت

    ردحذف
  4. بارك الله فيكم استاذ شرح رائع و دقيق .

    ردحذف
  5. السلام عليكم
    ممكن حضراتكم تساعدونى
    محتاج جدول اكسس
    حقل رقم قومى مصرى يستخرج منه حقول تاريخ الميلاد والنوع والعمر بالسنوات والحقل الاخير اذا وصل عمره 60 سنة او اكثر يكتب متفرغ ولو اقل من 60 يكتب بالخدمة
    طبعا البيانات تظهر عند الكتابة فى النموذج
    ولك جزيل الشكر

    ردحذف

إرسال تعليق

المشاركات الشائعة من هذه المدونة

انشاء الجداول في اكسس

انشاء الجداول في اكسس بعد انشاء ملف اكسس جديد فان الخطوة الاولى ستكون انشاء الجداول، ولانشاء الجداول نتبع ما يلي: 1- اختيار create  كما في الصورة 2- نقوم باختيار Table او Table Design والامر متروك للمستخدم، وانا بشكل شخصي افضل Table Design 3- بعد اختيار Table Design ستفتح لنا نافذة تصميم الجدول كما في الصورة 4- الحقل الاول Field Name يتم فية ادخال عناوين الاعمدة (الحقول) 5- الحقل الثاني Data Type يتم فية تحديد نوع المتغير (رقم ، نص ، تاريخ ...الخ) 6- الحقل الثالث Description وهو حقل اختياري ويتم فية ادخال وصف لهذا العمود 7- في كل جدول يجب تحديد المفتاح الاساسي ويجب ان يحتوي هذا الحقل على قيمة فريدة لا تتكرر مع اي حقل اخر. 8 - بعد الانتهاء نقوم باغلاق الجدول وعندها ستظهر نافذة لتحديد اسم الجدول وحفظة . 9- بعد فتح الجدول سيكون شكله كما في الصورة 10- نلاحظ ان عنوان العمود الاول ظهر كما تم كتابتة في التصميم اما العمود الثاني فقد ظهر اسمة باللغة العربية والسبب انه تم اضافة تسمية للعمود من خصائص الحقل اثناء تصميم الجدول كما في الصورة وبذلك يكو...

انشاء نموذج للدخول باسم مستخدم وكلمة مرور الى برنامج اكسس

انشاء نموذج للدخول باسم مستخدم وكلمة مرور الى برنامج اكسس عندما يكون البرنامج متاح لاكثر من شخص للعمل علية فلا بد من حماية البرنامج من المستخدمين غير المصرح لهم من خلال اضافة نموذج للدخول الى قاعدة الببيانات، ولانشاء نموذج الدخول الى البرنامج نتبع الخطوات التالية: انشاء جدول للمستخدمين يتم فيه تخزين اسماء المستخدمين وكلمات مرورهم ويحتوي على حقل لاسم المستخدم وحقل لكلمة المرور انشاء نموذج للدخول ويحتوي على مربعي نص غير مستندة الى مصدر بيانات، وزري امر واحد للالغاء والثاني للدخول  اضافة الكود التالي في حدث عند النقر في زر موافق   VBA   If pas = DLookup("userpass", "tusers", "usernam='" & [usr] & "'") Then DoCmd.OpenForm "Form1" Else MsgBox "يوجد خطأ في اسم المستخدم او كلمة المرور" End If

الشروط في الاستعلامات

الشروط في الاستعلامات يمكن اضافة الشروط في تصميم الاستعلام وعند اضافة الشرط فان الاستعلام سيقوم باظهار السجلات التي ينطبق عليها الشرط فقط، ويجب الانتباه الى انواع الحقول في الجدول قبل و ض ع الشرط لان صيغة الشرط في النص يختلف عنة اذا كنا نتعامل مع ارقام او تاريخ وسنتطرق الى هذة الانواع في هذا الموضوع. الصورة ادناة تخص تصميم الجدول الذي سنتعامل معه حيث يحتوي على اربع حقول من ظمنها اسم الطالب ونوعه نص قصير، وتاريخ الميلاد ونوعه تاريخ ووالنتيجة ونوعه رقم تم انشاء المثال اعلاة وتم تسميه الحقول باللغة العربية لتسهيل فهم الموضوع ، مع التاكيد على استخدام اللغة الانجليزية لكتابة المسميات يمكنك مشاهدة الفيديو للحصول على ايضاحات اكثر او الاستمرار بقراءة الموضوع 1-     الشروط في الحقل الذي يحتوي على نص او ارتباط تشعيبي: حسب الصورة اعلاة  لتصميم الجدول الخاص بنتائج الطلاب نلاحظ ان نوع البيانات في الحقل الثاني (اسم الطالب)    هو نص " Short Text "  وللتعامل مع هذا الحقل في الاستعلامات ،   في تصميم الاستعلام يمكننا ان نظع الشروط وكم...