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

أريد جلب قيمة من جدول لجدول آخر غير مرتبط به


إذهب إلى أفضل إجابة Solved by Elsayed Bn Gemy,

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

السلام عليكم ورحمة الله

 

لدي البريمج الصغير التالي :

 

(جدول الأصناف) ويوضع فيه:

(رقم - اسم الصنف - الكمية - السعر - تاريخ الادخال - رقم الفاتورة)

 

جدول آخر (جدول الميزانيات) وفيه :

ميزانية أ

ميزانية ب

ميزانية ج 

ميزانية د

 

المطلوب هو : جلب قيمة (ميزانية أ)  من جدول الميزانيات وتوضع في خلية (TextBox) مثلاً في التقرير لأجل طباعته مع محتويات الجدول الأول (جدول الأصناف) ؟؟

 

معلومة /// التقرير بالأصل معمول لجدول الأصناف ولكن المطلوب هو إضافة قيمة (ميزانية أ) في أعلى التقرير ،،، بالإضافة لإجراء عملية حسابية بأسفل التقرير وهي :

( مجموع سعر الأصناف - ميزانية أ ) = المتبقي من الميزانية أ

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

يا سيدى الفاضل ما نوع اعلاقة بين جدول الميزنيات وجدول الاصناف

ثم اى قيمة تريدها لميزانية أ

ثم هل حقل الميزانية أ ثابت لا يتغير

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

 

يا سيدى الفاضل ما نوع اعلاقة بين جدول الميزنيات وجدول الاصناف

ثم اى قيمة تريدها لميزانية أ

ثم هل حقل الميزانية أ ثابت لا يتغير

 

 

 

حياك الله أخي الكريم

 
ما نوع العلاقة بين جدول الميزنيات وجدول الاصناف؟
# لا توجد علاقة بين الجدولين .. هما فقط جدولين منفصلين.. الأول يتم تسجيل الأصناف فيه والآخر يتم وضع الميزانيات فيه.. إن كنت ترى أنه يجب أن تكون علاقة رابطة..أرجو إفادتي بنوع العلاقة المفروضة
 
ثم اى قيمة تريدها لميزانية أ ؟
# القيمة التي يتم وضعها في السجل وهي مثلا (30000).. يتم تسجيلها في حقل ميزانية أ
 
ثم هل حقل الميزانية أ ثابت لا يتغير ؟
نعم أخي الكريم قيمة ثابتة مثلاً (30000)
 
 
ولك شكري وامتناني
تم تعديل بواسطه عبدالرحمـ4024ـن
رابط هذا التعليق
شارك

يغضل أخى استخدام اللغة الانكليزية فى مسميات الجداول والأعمدة ليسهل استخدامها داخل اﻷكواد البرمجية

وعموما جرب هذا الكود لعله يوافى مرادك

CurrentDb.Execute "Insert into [جدول اﻷصناف] ([ميزانية أ]) SELECT [ميزانية أ] from [جدول الميزانيات]"

اجعله فى زر أمر حدث عند النقر

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

أسف أستاذ مارد ما رأيت ردك

 

 

اخى الكريم لا تقل هذا فكلنا هنا نخدم هدفا واحدا

ونطلب رضا الله عما نفعنا به

 

عموما تم تعديل المرفق ورفعته تانى  فقط تعديل فى التنسيق

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

تفضل اخى الكريم هل هذا هو طلبك

 

فعلاً فعلاً أخي الكريم هذا هو المطلوب بعينه :)

 

جزاك الله عني كل خير، وأسعد الله أيامك

 

الدالة DLookUp هي من أتعبتني بإدراج الميزانية في التقرير..

 

لك خالص الشكر عزيزي مارد.

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

لا لا لا ههههههههه  متاكولش بعقلى حلاوة

 

شخلل علشان تعدى هههههههههه :dance1: :dance1:

يعنى اختار ن الموضوع مجاب يعنى ههههههههه



 

 



 

تفضل اخى الكريم هل هذا هو طلبك

 

فعلاً فعلاً أخي الكريم هذا هو المطلوب بعينه :)

 

جزاك الله عني كل خير، وأسعد الله أيامك

 

الدالة DLookUp هي من أتعبتني بإدراج الميزانية في التقرير..

 

لك خالص الشكر عزيزي مارد.

 

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

يغضل أخى استخدام اللغة الانكليزية فى مسميات الجداول والأعمدة ليسهل استخدامها داخل اﻷكواد البرمجية

وعموما جرب هذا الكود لعله يوافى مرادك

CurrentDb.Execute "Insert into [جدول اﻷصناف] ([ميزانية أ]) SELECT [ميزانية أ] from [جدول الميزانيات]"

اجعله فى زر أمر حدث عند النقر

 

 

جزاك الله كل خير عزيزي أبو عبدالله على الاجتهاد معي وأسعد الله أيامك يارب

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

 

لا لا لا ههههههههه  متاكولش بعقلى حلاوة

 

 

 

 

 

شخلل علشان تعدى هههههههههه  :dance1:  :dance1:

يعنى اختار ن الموضوع مجاب يعنى ههههههههه

 

 

هههههههههههههه  أبشررررر ياغالي والله كان نسيان .. المعذرة ياصاحبي :)

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

أي واحد حاب يستفيد توضيحات أكثر عن الدالة يتبع الرابط 

 

 

https://support.office.com/ar-sa/article/%D8%A7%D9%84%D8%AF%D8%A7%D9%84%D8%A9-DLookup-8896cb03-e31f-45d1-86db-bed10dca5937?ui=ar-SA&rs=ar-SA&ad=SA

 

 

 

 

الدالة DLookup

يمكنك استخدام الدالة DLookup لتحديد قيمة حقل معيّن من مجموعة محددة من السجلات (عامل تصفية). استخدم الدالة DLookup في وحدة نمطية لـ Visual Basic for Applications (VBA)‎ أو Visual Basic Scripting Edition‏ (VBScript) أو تعبير استعلام أو سلسلة الاتصال ضمن نموذج أو تقرير.

يمكنك استخدام الدالة DLookup لعرض قيمة حقل معيّن غير موجود في مصدر السجل للنموذج أو التقرير الخاص بك. على سبيل المثال، نفترض أن لديك نموذجًا يستند إلى جدولOrder Details (تفاصيل الطلب). يعرض النموذج OrderID (معرّف الطلب) وProductID (معرّف المنتج) وUnitPrice (سعر الوحدة) وQuantity (الكمية) وDiscount (الخصم). ومع ذلك فإن الحقل ProductName (اسم المنتج) موجود في جدول آخر، جدول Products (المنتجات). يمكنك استخدام الدالة DLookup في عنصر تحكم محسوب لعرض ProductName (اسم المنتج) على نفس النموذج.

بناء الجملة

DLookup(expr, domain [, criteria)‎

يحتوي بناء جملة الدالة DLookup على الوسيطات التالية:

الوسيطة

الوصف

expr

مطلوبة. تعبير يحدد الحقل الذي تريد إرجاع القيمة الموجودة به. قد يكون مسافة علامة الجدولة يحدد حقلاً في جدول أو استعلام أو قد يكون تعبيرًا يقوم بعملية حسابية على البيانات الموجودة بهذا الحقل. في expr، يمكنك تضمين اسم حقل في جدول أو عنصر تحكم على نموذج أو ثابت أو دالة. إذا تضمن expr دالة، فقد تكون إما مضمنة أو محددة من قبل المستخدم، ولا تكون دالة تجميع مجال آخر أو دالة تجميع SQL.

domain

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

criteria

اختيارية. تعبير سلسلة أحرف يتم استخدامه لتقييد نطاق البيانات التي يتم تنفيذ الدالة DLookup عليها. على سبيل المثال، تساوي criteriaالعبارة WHERE في عبارة SQL، بدون الكلمة WHERE. في حالة حذف criteria، تقوم الدالة DLookup بتقييم expr على المجال بالكامل. ويجب أن يكون أي حقل مضمن في criteria حقلاً في domain؛ وإلا ستقوم الدالة DLookup بإرجاع زر خيار.

 

ملاحظات

ترجع الدالة DLookup قيمة حقل فردية بناءً على المعلومات المحددة في criteria. وعلى الرغم من أن criteria وسيطة اختيارية، ففي حالة عدم تقديم قيمة لوسيطة criteria، تقوم الدالة DLookup بإرجاع قيمة عشوائية في المجال.

في حالة عدم وجود سجل يفي بمتطلبات الوسيطة criteria أو إذا كان domain لا يحتوي على سجلات، ترجع الدالة DLookup القيمة Null (قيمة خالية).

في حالة وجود أكثر من حقل يطابق criteria، تقوم الدالة DLookup بإرجاع التطابق الأول. يجب تحديد المعايير التي من شأنها ضمان أن قيمة الحقل التي تقوم الدالة DLookup بإرجاعها فريدة. قد تحتاج إلى استخدام قيمة مربع رقم السجل للمعايير الخاصة بك، مثل [EmployeeID] "معرّف الموظف" في المثال التالي، للتأكيد على أن الدالة DLookup ترجع قيمة فريدة:

Dim varX As Variant
varX = DLookup("[LastName]", "Employees", _
"[EmployeeID] = 1")

وسواءً كنت تستخدم الدالة DLookup في وحدة ماكرو أو وحدة نمطية أو تعبير استعلام أو عنصر تحكم محسوب، يجب تكوين الوسيطة criteria بعناية للتأكيد على أنه سيتم التقييم بصورة صحيحة.

يمكنك استخدام الدالة DLookup لتحديد المعايير في الصف Criteria (المعايير) لاستعلام، في تعبير حقل محسوب في استعلام أو في الصف Update To (التحديث إلى) في مشروع Microsoft Access.

يمكنك أيضًا استخدام الدالة DLookup في تعبير في عنصر تحكم محسوب ضمن نموذج أو تقرير إذا كان الحقل الذي تريد عرضه غير موجود في مصدر السجل الذي يستند إليه النموذج أو التقرير الخاص بك. على سبيل المثال، أن يكون لديك النموذج Order Details (تفاصيل الطلب) يستند إلى الجدول Order Details (تفاصيل الطلب) من خلال مربع نص يسمى ProductID (معرّف المنتج) يعرض الحقل ProductID (معرّف المنتج). للبحث عن ProductName (اسم المنتج) من الجدول Products (المنتجات) بناءً على القيمة الموجودة في مربع النص، يمكنك إنشاء مربع نص آخر وتعيين الخاصيةمصدر_عنصر_التحكم الخاصة بها إلى التعبير التالي:

=DLookup("[ProductName]", "Products", "[ProductID] =" & Forms![Order Details]!ProductID)

تلميحات

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

  • يمكنك أيضًا استخدام "معالج البحث" للبحث عن قيم في جدول خارجي.

ملاحظة   لا يتم تضمين التغييرات التي تتم على السجلات الموجودة في domain عند استخدام تلك الدالة. إذا أردت إسناد الدالة DLookup على القيم التي تم تغييرها، يجب أولاً حفظ التغييرات بواسطة النقر فوق حفظ السجلات في القائمة سجلات ضمن علامة التبويب بيانات، مع نقل التركيز إلى سجل آخر، أو بواسطة استخدام الأسلوب Update.

مثال

ملاحظة   توضح الأمثلة التالية استخدام هذه الوظيفة في وحدة (Visual Basic for Applications (VBA النمطية. لمزيد من المعلومات حول التعامل مع VBA، حدد مرجع المطوِّر في القائمة المنسدلة الموجودة بجوار بحث ثم أدخل مصطلحًا واحدًا أو أكثر في مربع البحث.

يقوم المثال التالي بإرجاع معلومات الاسم من الحقل CompanyName (اسم الشركة) للسجل بما يتوافق مع criteria. والمجال هو جدول Shippers (شركات الشحن). تقوم الوسيطة criteria بتقييد مجموعة السجلات التي تنتج من البحث لتلك السجلات التي يساوي ShipperID (معرّف شركة الشحن) رقم 1.

Dim varX As Variant
varX = DLookup("[CompanyName]", _
"Shippers", "[shipperID] = 1")

يستخدم المثال التالي من الجدول Shippers (شركات الشحن) عنصر تحكم النموذج ShipperID (معرّف شركة الشحن) لتقديم المعايير للدالة DLookup. لاحظ أن المرجع لعنصر التحكم غير مضمن في علامات الاقتباس التي تشير إلى سلاسل الأحرف. يؤكد هذا على أنه في كل مرة يتم استدعاء الدالة DLookup، يقوم Office InfoPath 2007 بإحضار القيمة الحالية من عنصر التحكم.

Dim varX As Variant
varX = DLookup("[CompanyName]", "Shippers", _
"[shipperID] = " & Forms!Shippers!ShipperID)

يستخدم المثال التالي المتغير، intSearch، للحصول على القيمة.

Dim intSearch As Integer
Dim varX As Variant
intSearch = 1
varX = DLookup("[CompanyName]", "Shippers", _
"[shipperID] = " & intSearch)

ينطبق على: Access 2013, Access 2007, Access 2010

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

تصدق بالله انا كنت لسه بكتب مشاركة عنها

 

طب انتظر هاكتب كام مثال

 

والله إننا شغوفين ومتعطشين لما عندك من علم وعند الشباب هنا .. وإن شاء الله إن جهودكم لن تضيع.. فهي في موازين أعمالكم أولاً وقبل أي شيء..

وما نحن إلا طلبة علم لأمثالكم،، ويسعدنا جدا كل ما تقدمونه لأجل الرقي بالعقل العربي والإسلامي.. تابعوا ونحن معكم بإذن الله.. فالعلم ممتع جداً

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

امثلة بسيطة ارجوا ان تنفعنا جميعا

 

صيغة الدالة DLookup

DLookup(expr, domain [, criteria] )‎

expr( مطلوب) اسم الحقل
domain( مطلوبة) اسم الجدول/الاستعلام
criteria( اختيارية) الشروط

دا مثال بسيط
:
عازوين نعرف اسم الصنف الذي كوده 15 في جدول الاصناف
اسم الجدول : items
اسم الحقل الذي يحمل أرقام الاصناف : code_items
اسم الحقل الذي يحمل أسماء الاصناف: items_Name

 

كود:

MsgBox DLookup("[items_Name]", "items", "code_items=15")


 

ممكن ناخد كود الصنف من مربع نص موجود في نموذج بدلاً من التصريح في الدالة عن كود الصنف
لنفترض مثلا  أن مربع نص موجودٌ في النموذج باسم txtItemsCode

 

 

كود:

MsgBox DLookup("[items_Name]", "items", "code_items=" & Me.txtItemsCode)


 

ممكن ناخد  قيمة كود الصنف من نموذج آخر  بس بشرط أن يكون مفتوحاً ، فلو كان

txtItemsCode

موجود في نموذج آخر

باسمfrm1

فإن الكود سيأخذ الشكل التالي

 

:

كود:

MsgBox DLookup("[items_Name]", "items", "code_items=" & Forms!frm1!txtItemsCode)


 

ملحوظة
بالنسبة للشروط يجب أن تأخذ في الاعتبار نوع بيانات الحقل الذي نعتمد عليه في الشرط ، في المثال السابق كان حقل

 

نوع بياناته (رقم) ، فلو كان نوع بياناته (نص) سيكون الكود بالشكل التالي :code_items

كود:

MsgBox DLookup("[items_Name]", "items", "code_items='" & Me.txtItemsCode & "'")


 

طب لو كان نوع بياناته (وقت/تاريخ) الكود هيبقى كدا

كود:

MsgBox DLookup("[items_Name]", "items", "code_items=#" & Me.txtItemsCode & "#")


 

وشكر الله لكم جميعا

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

أخوتي أأسف على المقاطعة وجزاكم الله كل خير 

أرجو المساعدة في دالة للبحث عن أسم ما (اسم الزبون) في استعلام مأخوذ من جدول والجدول مربوط بجدول أخر (مأخوذ اسم الزبون من جدول اسماء الزبائن)

يعني عندي جدولين رئيسي  ..... وثانوي (اسماء الزبائن) 

ومن الجدول الرئيسي عامل استعلام للبحث بواسطة اسم الزبون 

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

 

ولكم الشكر سلفاً

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

أخوتي أأسف على المقاطعة وجزاكم الله كل خير 

أرجو المساعدة في دالة للبحث عن أسم ما (اسم الزبون) في استعلام مأخوذ من جدول والجدول مربوط بجدول أخر (مأخوذ اسم الزبون من جدول اسماء الزبائن)

يعني عندي جدولين رئيسي  ..... وثانوي (اسماء الزبائن) 

ومن الجدول الرئيسي عامل استعلام للبحث بواسطة اسم الزبون 

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

 

ولكم الشكر سلفاً

 

اخى الكريم قم بكتابة ما تريد فى موضوع منفصل وارفق مثالا الى ذلك

ونسال الله العون جميعا

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

امثلة بسيطة ارجوا ان تنفعنا جميعا

 

صيغة الدالة DLookup

DLookup(expr, domain [, criteria] )‎

expr( مطلوب) اسم الحقل

domain( مطلوبة) اسم الجدول/الاستعلام

criteria( اختيارية) الشروط

دا مثال بسيط

:

عازوين نعرف اسم الصنف الذي كوده 15 في جدول الاصناف

اسم الجدول : items

اسم الحقل الذي يحمل أرقام الاصناف : code_items

اسم الحقل الذي يحمل أسماء الاصناف: items_Name

 

كود:

MsgBox DLookup("[items_Name]", "items", "code_items=15")

 

ممكن ناخد كود الصنف من مربع نص موجود في نموذج بدلاً من التصريح في الدالة عن كود الصنف

لنفترض مثلا  أن مربع نص موجودٌ في النموذج باسم txtItemsCode

 

 

كود:

MsgBox DLookup("[items_Name]", "items", "code_items=" & Me.txtItemsCode)

 

ممكن ناخد  قيمة كود الصنف من نموذج آخر  بس بشرط أن يكون مفتوحاً ، فلو كان

txtItemsCode

موجود في نموذج آخر

باسمfrm1

فإن الكود سيأخذ الشكل التالي

 

:

كود:

MsgBox DLookup("[items_Name]", "items", "code_items=" & Forms!frm1!txtItemsCode)

 

ملحوظة

بالنسبة للشروط يجب أن تأخذ في الاعتبار نوع بيانات الحقل الذي نعتمد عليه في الشرط ، في المثال السابق كان حقل

 

نوع بياناته (رقم) ، فلو كان نوع بياناته (نص) سيكون الكود بالشكل التالي :code_items

كود:

MsgBox DLookup("[items_Name]", "items", "code_items='" & Me.txtItemsCode & "'")

 

طب لو كان نوع بياناته (وقت/تاريخ) الكود هيبقى كدا

كود:

MsgBox DLookup("[items_Name]", "items", "code_items=#" & Me.txtItemsCode & "#")

 

وشكر الله لكم جميعا

 

ربنا يبارك فيك ويمد في عمرك وصحتك ومالك

توضيحاتك لا يعلى عليها

ونخدمك إن شاء الله فيما نستطيع

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

  • 1 year later...
  • 1 year later...
  • 4 years later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information