kaser906 قام بنشر مارس 12, 2018 قام بنشر مارس 12, 2018 السلام عليكم ورحمة الله وبركاتة بالمرفق نموذج Frm المطلوب : بعد إدخال رقم في مربع النص Num_rihla وليكن 10 ومربع النص Num_intr وليكن الرقم 25 عند النقر على زر أمر فتح التقرير أن يتم إظهار رقم PcDigt في مربعات النص غير المنظمة حسب الشرط التالي Num_rihla =Forms!Frm!Num_rihla And Num_intr = Forms!Frm!Num_intr مطلوب كود dlookup في مصدر عنصر التحكم في مربع النص الغير منظم في التقرير من الجدولين بحيث يجلب رقم PcDigt من الجدول Tabl_bus الى الحقل s10 مثلا بشرط أن يكونNum_rihla = Num_rihla!Frm And Num_intr=Frm !Num_intr وحقل Chair_No = 10 ويتم معه جلب الأسم الأول والأخير من جدول Tabl_Emp بشرط PcDigt = PcDigt الذي تم جلبه من جدول Tabl_bus وعند عدم وجود الرقم Chair_No في جدول Tabl_Bus تظهر عبارة لم يتم التخصيص عملت هذا الكود لكنه لم يأتي بنتيجه صحيحه حيث انه يرجع القيمة لأول سجل في الجدول ولم أتمكن من تعديله وإكماله ليحقق المطلوب =DLookUp("[PcDigt]";"Tabl_bus";"[Num_rihla] = " & [Forms]![Frm]![Num_rihla] And "[Num_intr] = " & [Forms]![Frm]![Num_intr] And "[Chair_No]=10") ارجو المساعده ولكم جزيل الشكر dlook.rar
AlwaZeeR قام بنشر مارس 12, 2018 قام بنشر مارس 12, 2018 وعليكم السلام ورحمة الله وبركاته خلينا نمشي خطوة خطوة لانك انت اللي فاهم الموضوع: بعيداً عن النموذج المراد ادخال القيمة فيه، دعنا نضع ارقاماً صحيحة كي نصل الى النتيجة اقتباس حيث يجلب يجلب رقم PcDigt من الجدول Tabl_bus الى الحقل s10 مثلا بشرط أن يكون حقل Chair_No = 10 =DLookUp("[PcDigt]","[Tabl_bus]","Chair_No = 10") هنا احضرنا رقم (PcDigt) والنتيجة = 20 حسب الجدول لديك اقتباس ويتم معه جلب الأسم الأول والأخير من جدول Tabl_Emp بشرط PcDigt = PcDigt الذي تم جلبه من جدول Tabl_bus في جدول (Tabl_Emp) لا يوجد رقم (PcDigt) بقيمة 20 كي يتم عمل شرط بينهما لاحضار الاسم الاول والاخير. اقتباس وعند عدم وجود الرقم Chair_No في جدول Tabl_Bus تظهر عبارة لم يتم التخصيص عند الوصول الى القيمة الصحيحة سنستخدم امر IIF لاظهار عبارة لم يتم التخصيص أرجو التوضيح وان شاء الله سوف نصل الى نتيجة 2
kaser906 قام بنشر مارس 12, 2018 الكاتب قام بنشر مارس 12, 2018 (معدل) شكرا لتجاوبك استاذنا @AlwaZeeR الطلب متشابك قليلا ولعلي لم اتمكن من إيصاله بالصورة الصحية لذلك سأشرح ما هي العلاقة بين الجدولين والموضوع اولا الموضوع عبارة عن حجز مقاعد على حافلة الجدول Tabl_ Emp جدول بيانات الركاب الجدول Tabl_bus هو جدول الحافلة الحقل PcDigt i هو رقم الراكب الحقل Chair_No هو رقم المقعد في الحافلة ويقابله بالتقرير الحقول من S1 إلى S49 الحقل Num_rihla هو رقم الرحلة الحقل Num_intr هو رقم الحافلة 5 ساعات مضت, AlwaZeeR said: حيث يجلب يجلب رقم PcDigt من الجدول Tabl_bus الى الحقل s10 مثلا بشرط أن يكون حقل Chair_no رقم المقعد يقابله بالتقرير المقعد الذي هو s1 الى s49 5 ساعات مضت, AlwaZeeR said: في جدول (Tabl_Emp) لا يوجد رقم (PcDigt) بقيمة 20 كي يتم عمل شرط بينهما لاحضار الاسم الاول والاخير. اعتذر هنا لاني وضعت ارقام عشوائية وتم التعديل في المرفق حيث ان رقم الراكب يجب أن يكون موجود بكلا الجدولين 5 ساعات مضت, AlwaZeeR said: وعند عدم وجود الرقم Chair_No في جدول Tabl_Bus تظهر عبارة لم يتم التخصيص من الممكن ان يكون لم يتم ادخال رقم المقعد بالجدول مثلا لم يتم تسجيل رقم مقعد رقم 33 في الجدول (اي لايوجد سجل حسب الشروط ) يتم اظهار عبارة لم يتم التخصيص في مربع النص غير المنظم بالتقرير ( غير مخصص ) المطلوب يتم اظهار رقم الركاب واسمه في الحقل ملاحظة : في حالة وجود سجل Chair_no ولم يتم تسجيل رقم PcDigt يظهر نص في مربع النص بالتقرير شاغر انا اردت استخدام هذه الطريقة للمحافظة على تنسيق التقرير واذا كان هناك طريقة افضل فلا مانع وهذا المرفق الجديد بعد تعديل البيانات dlook.rar تم تعديل مارس 12, 2018 بواسطه kaser906
AlwaZeeR قام بنشر مارس 12, 2018 قام بنشر مارس 12, 2018 (معدل) العفو عزيزي فهم السؤال ثلثي الاجابة والشرح الآن وافي ومفهوم ضع الكود مع تغيير رقم الكرسي حسب ما هو موجود في التقرير: =IIf(DLookUp("Chair_no","Tabl_bus","Chair_no=1 And Num_rihla=[Forms]![Frm]![Num_rihla] And [Forms]![Frm]![Num_intr]"),DLookUp("[Fname] & ' ' & [Family]","Tabl_Emp","PcDigt = " & DLookUp("PcDigt","Tabl_bus","Num_rihla=[Forms]![Frm]![Num_rihla] And [Forms]![Frm]![Num_intr] And [Chair_no]=1")),"شاغر") نأتي الآن الى الطريقة السهلة والكود الاصغر: ننشئ استعلام ونسميه مثلاً: Qry ثم نجعله مصدر التقرير ونستخدم هذا الكود: =IIf(DLookUp("[Chair_No]","[Qry]","[Chair_no]=1"),DLookUp("[Fname] & ' ' & [Family]","[Qry]","[Chair_no] = 1"),"شاغر") تفضل جرب ووافني بالنتيجة Waz-dlook.rar تم تعديل مارس 12, 2018 بواسطه AlwaZeeR المرفق 2
kaser906 قام بنشر مارس 13, 2018 الكاتب قام بنشر مارس 13, 2018 7 ساعات مضت, AlwaZeeR said: تفضل جرب ووافني بالنتيجة ممتاز استاذنا فقط اردت أن أشير إلى ( نص شاغر ) حيث انها تظهر حتى في حالة عدم وجود رقم في حقل Chair_no بالجدول Tabl_bus اريد عند وجود الرقم Chair_no وعدم وجود رقم راكب في نفس السجل إظهار نص( شاغر) وعند عدم وجود سجل بنفس الرقم Chair_no بالجدول إظهار عبارة ( غير مخصص ) شاكر ومقدر تعاونك ،،،
AlwaZeeR قام بنشر مارس 13, 2018 قام بنشر مارس 13, 2018 (معدل) تفضل عزيزي جرب ووافني بالنتيجة Waz-dlook00.rar تم تعديل مارس 13, 2018 بواسطه AlwaZeeR
kaser906 قام بنشر مارس 13, 2018 الكاتب قام بنشر مارس 13, 2018 (معدل) 1 ساعه مضت, AlwaZeeR said: تفضل عزيزي جرب ووافني بالنتيجة الله يعطيك العافية استاذنا الهدف من طلبي كان المحافظة على تنسيق التقرير لأنه يظهر الحقول على شكل مخطط ( كروكي ) لمقاعد الحافلة من الداخل وهذه الطريقة لن تخدمني في المحافظة على تنسيق التقرير هل بالامكان التعديل على الطريقة الأولى التي عملتها عن طريق دالة Dlookup للمحافظة على تنسيق التقرير تم تعديل مارس 13, 2018 بواسطه kaser906
AlwaZeeR قام بنشر مارس 13, 2018 قام بنشر مارس 13, 2018 يزيدك عافية اخي الكريم بما انه اصبح لدينا استعلام يقوم باستخراج النتيجة بشكل صحيح فيمكننا استخدامه في اي تقرير سواء كان تقرير كروكي او غيره استخدم: =DLookUp("[Result]","[Qry]","chair_No=1") مع تغيير رقم الكرسي بحسب مكانه في التقرير :: تحياتي 1
kaser906 قام بنشر مارس 14, 2018 الكاتب قام بنشر مارس 14, 2018 9 ساعات مضت, AlwaZeeR said: ما انه اصبح لدينا استعلام يقوم باستخراج النتيجة بشكل صحيح فيمكننا استخدامه في اي تقرير صباح الخير استاذنا وشكرا لتحملك وسعة صدرك معذرة منك الطريقة الأخيرة لاتفي بالغرض *واردت ان اضيف أن اعتماد التقرير بشكل كلي في السجلات على جدول Tabl_bus جدول Tabl_Emp فقط نجلب منه الاسم اذا كان رقم الراكب موجود بجدول Tabl_bus * ارغب في حل غير الأستعلام حتى لو كان عن طريق كود Vba
kaser906 قام بنشر مارس 14, 2018 الكاتب قام بنشر مارس 14, 2018 بعد عدة محاولات توصلت الى هذه الطريقة عن طريق الكود التالي في حدث عند الطباعة وأتى بنتائج جيدة يعاب عليه ان الكود طويل ويحتاج اني اضعه لكل حقل من حقول التقرير 'نجلب رقم الراكب من جدول الحافلة If DLookup("Chair_no=2", "Tabl_bus", "Chair_no=2 And Num_rihla=[Forms]![frm]![Num_rihla]And Num_Itinerary_ID=[Forms]![frm]![Num_Itinerary_ID]") And _ DLookup("PcDigt", "Tabl_bus", "Chair_no=2 And Num_rihla=[Forms]![frm]![Num_rihla]And Num_Itinerary_ID=[Forms]![frm]![Num_Itinerary_ID]") Then ' نجلب الاسم حسب رقم الراكب الذي تم جلبه في الحقل بالتقرير Me.S2 = DLookup("PcDigt", "Tabl_bus", "Chair_no=2 And Num_rihla=[Forms]![frm]![Num_rihla]And Num_Itinerary_ID=[Forms]![frm]![Num_Itinerary_ID]") Me.S2 = DLookup("[FName] & ' ' & [Family]", "Tabl_Emp", "PcDigt = S2") ' عد السجلات التي تحتوي على رقم المقعد ElseIf DCount("id", "Tabl_bus", "Chair_no=2 And Num_rihla=[Forms]![frm]![Num_rihla]And Num_Itinerary_ID=[Forms]![frm]![Num_Itinerary_ID]") < 1 Then Me.S2 = "غير مخصص" ' عد السجلات التي تحتوي على رقم المقعد ولاتحتوي على رقم الراكب ElseIf DCount("id", "Tabl_bus", "Chair_no=2 And Num_rihla=[Forms]![frm]![Num_rihla]And Num_Itinerary_ID=[Forms]![frm]![Num_Itinerary_ID]And[PcDigt]=null") = 0 Then Me.S2 = "شاغر" End If لو أمكن اختصار هذا الكود
الردود الموصى بها
انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد
يجب ان تكون عضوا لدينا لتتمكن من التعليق
انشئ حساب جديد
سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .
سجل حساب جديدتسجيل دخول
هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.
سجل دخولك الان