اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

قام بنشر (معدل)

تحية طيبة لجميع اساتذة واعضاء المنتدى الكرام..

لدي نموذج مبسط لجدولين احدهما لمعلومات الموظفين والآخر لمهارات كلاً منهم , المطلوب عمل تقرير يظهر جميع الموظفين مع جميع المهارات ان امتلكوها .

 حاولت ان اعمل استعلامين الاستعلام الاول :اظهر لدي فقط الموظفين الذين لديهم مهارات دون ان يظهر البقية وذلك لارتباط الجدولين بـ (ID)  الذي  يمثل رقم الموظف كما موضح في الصورة رقم 3

اما الاستعلام الثاني فهو استعلام تحديث بيانات المهارات الى جدول المعلومات لأقوم بعمل تقرير اخذ فيه البيانات فقط من جدول المعلومات وهذه الطريقة استطعت ان اظهر جميع الموظفين لكن لم تأتي بالنتيجة المطلوبه فقط جاء التحديث فقط بأخر البيانات المدخلة لمهارات الموظفين ولم يأتي بها جميعا , كما موضح في الصورة رقم 4

النتيجة المطلوبة للتقرير هي كما في موضح في الصورة رقم 5

النموذج المبسط مرفق ادناه.

جزيل الشكر لكل من يتابع الموضوع..

m22-3.PNG

query2--22-3.PNGquery22-3.PNG

Update22-3.rar

تم تعديل بواسطه ام ناصر
خطأ املائي
قام بنشر
24 دقائق مضت, ابو ياسين المشولي said:

هل هذا ينفع


SELECT Information.ID, Information.Name, Information.[Date of commencement of work], Nz(DLookUp("[Skills]","[Skills]","[ID]=" & [ID])) AS Skills
FROM Information;

 

استاذ ابو ياسين شكرا لمروركم وتفضلكم بمشاركة الحل لكن الاستعلام لم يوصلني للنتيجة المطلوبة , الموظف (علي محمد ناصر) لديه اكثر من مهارة في جدول المهارات ولم يظهر الاستعلام الاَ احداهن المطلوب كما موضح في الصورة رقم 5 المرفقة اعلاه.

new22-3.PNG.89402ab271eb29f389d663e20882ab2b.PNG

قام بنشر

@ام ناصر

مشاركة مع اخي وحبيبي @ابو ياسين المشولي

ضعي هذا الكود خلف الزر

Set rs1 = CurrentDb.OpenRecordset("information")
If rs1.RecordCount = 0 Then Exit Sub
rs1.MoveFirst
Do While Not rs1.EOF
Set rs2 = CurrentDb.OpenRecordset("select * from skills where id=" & rs1(0))
If rs2.RecordCount = 0 Then DoCmd.RunSQL "update information set skills=null where id=" & rs1(0): GoTo 10
rs2.MoveFirst
Do While Not rs2.EOF
xt = xt & rs2(1) & ","
rs2.MoveNext
Loop
DoCmd.RunSQL "update information set skills='" & xt & "' where id=" & rs1(0)
xt = ""
10: rs1.MoveNext
Loop

بالتوفيق

  • Like 1
  • Thanks 2
قام بنشر

عفواً استاذ @رمهان 

لو كان الـ (id) عبارة عن (Text) كيف حتكون معالجة الكود لانه يظهر لي مسج عدم تطابق الكود مع البيانات من نوع (Text) حاولت اعالجه متوصلت لنتيجة .11.png.034ac1884ee3548ac0035e49ab1c357c.png

قام بنشر
20 دقائق مضت, ام ناصر said:

عفواً استاذ @رمهان 

لو كان الـ (id) عبارة عن (Text) كيف حتكون معالجة الكود لانه يظهر لي مسج عدم تطابق الكود مع البيانات من نوع (Text) حاولت اعالجه متوصلت لنتيجة .11.png.034ac1884ee3548ac0035e49ab1c357c.png

اذا كان نص بيكون هكذا

Set rs2 = CurrentDb.OpenRecordset("select * from skills where id='" & rs1(0) & "'")

 

  • Thanks 2

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

سجل دخولك الان
×
×
  • اضف...

Important Information