دروس متقدمة في الأكسس للمبتدئين (الدرس الأول)
الأخ AliHamdan لقد علقت على إجابتك فأنت أول شخص أنظر ردي طبعاً انت اخلفت في تطبيق المثال حيث اني طلبت ذلك في نموذجين وانت جعلتها في نموذج واحد .. ولكن لما رايت النتيجة صحيحة سكت عن ذلك
الأخ salem_1212 إجابتك 100% صحيحه مبروك
الاختبار الرابع :
سوف نستخدم ElseIf
الأدوات المطلوبة في النموذج هي :
1-مربع نص غير منظم باسم TNN
2-مربع نص غير منظم باسم txt1
3-مربع نص غير منظم باسم txt2
4-مربع نص غير منظم باسم txt3
5-زر أمر
قم بإخفاء جميع مربعات النص الثلاثة ما عدا المربع TNN
طريقة الإخفاء كما يلي :-
وأنت في وضع تصميم النموذج ضع مؤشر الفأرة على المربع الذي تريد إخفاؤه
ثم أضغط على يمين الفأرة ثم اختر خصائص
ثم ( تنسيق ) ثم (مرئي) وغير الخاصية من (نعم ) إلى (لا) فقط
المطلوب للاختبار هو تنفيذ ما يلي :
إذا كان مربع النص TNN يحتوي على الرقم (1)
يتم إخفاء المربع txt2 والمربع txt3 وإظهار المربع txt1
وإذا كان مربع النص TNN يحتوي على الرقم (2)
يتم إخفاء المربع txt1 والمربع txt3 وإظهار المربع txt2
وإذا كان مربع النص TNN يحتوي على الرقم (3)
يتم إخفاء المربع txt1 والمربع txt2 وإظهار المربع txt3
وإلا else
يتم إظهار جميع المربعات وهي txt1 و txt2 و txt3
نهاية الجملة الشرطية
للتوضيح :استخدم طريقة مشابهة لهذه مع التغيير طبعاً ليناسب المطلوب ..
If [...] = 1 Then [...] = 2 ElseIf [...] = 3 Then [...] = 4 ElseIf [...] = 5 Then [...] = 6 Else [....]=123 End If
للعلم الكود الذ يقوم بإخفاء مربع النص وإظهاره هو
للإخفاء
Txt1.Visible = False
للإظهار
Txt1.Visible = True
أرجو لكم التوفيق
ماشاء الله أخوي salem_1212
تطور ملحوظ ونتيجة صحيحة 100%
الاخ AliHamdan اجابة صحيحة .. ولا يوجد بين الأخوان غضب القصد مصلحتك فقط لا غير
الاخ ابن مسقط اجابةصحيحة وشرح متميز
الاختبار الخامس :
الأدوات المطلوبة في النموذج هي :
1-مربع نص غير منظم باسم MSG
فقط
المطلوب للاختبار هو تنفيذ ما يلي :
إذا كان مربع النص MSG يحتوي على كلمة (حذف)
تخرج علينا رسالة هل تريد الحذف ؟
وإلا else
تخرج علينا رسالة تم إلغاء الأمر
نهاية الجملة الشرطية
(( ملاحظة )) : سوف نضع الكود هذه المرة في حدث (عند الخروج ) لمربع النص MSG كنوع من التغيير في وضع الأكواد
للعلم : طريقة كتابة الرسالة المطلوبة هنا هي كالآتي :
MsgBox "هل تريد الحذف؟", vbOKOnly, "تحذير"
طريقة كتابة الرسالة :
نكتب أولاً : MsgBox
ثم نضع علامتي تنصيص هكذا " " وهي حرف الطاء مع ضغط الشفت
ثم نكتب الرسالة بين هاتين العلامتين
ثم نضغط على حرف الواو بعد تحويل اللغة إلى الإنجليزية ليخرج علينا الأوامر الخاصة بالرسالة
نختار منها vbOKOnly
ثم نضغط على حرف الواو مرة أخرى بعد تحويل اللغة إلى الإنجليزية
ثم نضع علامتي تنصيص هكذا " " وهي حرف الطاء مع ضغط الشفت
ثم نكتب عنوان الرسالة بين هاتين العلامتين وهي هنا ( تحذير)
ولزيادة الفائدة عن رسائل الأكسس راجع هذا الرابط :
http://www.msaccess4arab.com/Top/Functions...sgbox/index.htm
وسوف نأخذ في الدرس القادم إن شاء الله رسالة التحذير أو السؤال وفيها زري (نعم) و ( لا ) فإذا ضغطنا على (نعم) ينفذ حدث وإذا ضغطنا على (لا) ينفذ حدث آخر
ويوجد في المنتدى برنامج مفيد في تكوين الرسائل وضعه الأخ أشرف خليل
أرجو لكم التوفيق
الأخ فهد
الله يكرمك يا أخي علي الدروس اللى كنت منتظر أحد الأخوة يتقدم لشرحها من زمان. أسلوب سهل و جميل متميز خصوصا التمارين تشعل الرغبة للتعلم.(f)(f)(f)
عملت التمرين الثالث إنما اللون لا يتغير ابدا عند إدخال قيم مغايرة للمطلوب.صراحة مش عارف إيه المشكلة.. وجزاكم الله خيرا مقدما
السلام عليكم
آدى التمرين الرابع ومعه إستفسار ..
*سؤال* هل يمكن دمج السطور الشرطية كسطر واحد على الصورة
Then Txt1.visible, txt2.visible, txt3.visible=true
رأيت أكثر من أخ يستخدمه بالمنتدي لكن ما عرفت أطبقه بالصورة المدمجة بالتمرين
الأخ Mandour بالنسبة للاختبار الثالث
أنظر الفرق .. دقق لتستفيد في المرات القادمة
'الكود بعد التعديل If [txt1] = "فهد الدوسري" Or [txt1] = 100 Then txt1.BackColor = 255 txt2.BackColor = 65535 Else txt1.BackColor = 32768 txt2.BackColor = 16711680 End If 'الكود قبل التعديل If [txt1] = "فهد الدوسرى" Or "100" Then txt1.BackColor = 255 txt2.BackColor = 65535 Else txt1.BackColor = 32768 txt2.BackColor = 16711680 End If
أما سؤالك عن استخدام الكود الذي ذكرته أنت وهو
Then Txt1.visible, txt2.visible, txt3.visible=true
فأنا لم استخدمه من قبل ولا أعرف له طريقة ولعل أحد أن يفيدنا في ذلك الأمر
الأخ Mandour الاختبار الرابع إجابتك صحيحة100%
الأخ Mandour الاختبار الخامس طريقة شرحك وترتيبك للنموذج رائعة بل أكثر من رائعة
أما الإجابة على الاختبار الخامس فهي ناقصة ولم تأتي بالمطلوب منك (راجع السؤال الخامس لترى المطلوب بالضبط)واستمر على هذا التميز في تصميم النماذج
الأخ salem_1212 الاختبار الخامس إجابتك صحيحة رغم اختلافها قليلاً ولكنها تؤدي الغرض المطلوب أهنئك على هذه الثقة في النفس
أرى أن الجميع بدء يهتم بمظهر النموذج وترتيبه مع الإجابة الصحيحة طبعاً
وهذا يدل على أنكم قد تغلبتم على الخوف الذي كان في الاختبارات السابقة
فقد كنا نضع الإجابة فقط دون الاهتمام بالنموذج سوى الأخ ابن مسقط فقد كان يهتم من أول الاختبارات
بمظهر النموذج وذلك لإن عنده ثقة في نفسه أما الآن فالجميع لديهم نفس الثقة
وهذا يبشر بخير ..فغرس الثقة في النفس يساعد على الابداع
فإلى الأمام دوماً للجميع
الاختبار السادس :
الأدوات المطلوبة في النموذج هي :
1-جدول باسم(SSS) ويتكون من حقلين فقط الرقم و الاسم .. ادخل فيه عدة أسماء للتجربة فقط
2-نموذج مبني على الجدول SSS
3-زر أمر
المطلوب للاختبار هو تنفيذ ما يلي :
بعد الضغط على زر الأمر
تخرج علينا رسالة هل تريد الحذف ؟ وفيها زري (نعم) و (لا) .
إذا ضغطنا (نعم) يتم حذف أحد الاسماء
وإذا ضغطنا (لا) يتم إلغاء الأمر ولا يتم الحذف
نهاية الجملة الشرطية
عرفنا في الاختبار الخامس كيف نكتب الرسالة المكونة من (موافق) فقط وهو اختيار vbOKOnly
هذه المرة سوف نكتب الرسالة المكونة من (نعم)و(لا) وذلك بختيار vbYesNo
تختلف كتابة هذه الرسالة اختلاف بسيط فقط من أجل أن تعمل مع الجملة الشرطية IF
وهي بهذه الطريقة .. ركزوا قليلاً على هذه الطريقة فقد تحتاجونها كثيراً
If MsgBox("AAAAAAA", vbYesNo, "DDDDDDD") = vbYes ThenAAAAAAA = نص الرسالة
DDDDDDD = عنوان الرسالة
للعلم الحدث الخاص بالحذف هو
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70 DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
وسوف تخرج علينا رسالة الأكسس المعتادة مع الرسالة التي سوف نضعها ولكي نلغي رسالة الأكسس نضع هذا الكود قبل حدث الحذف
DoCmd.SetWarnings False
ليصبح الكود في النهاية هكذا
DoCmd.SetWarnings False DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70 DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
أما كود إلغاء الأمر فهو
DoCmd.CancelEvent
أرجو أن يتم تطبيق ذلك بصورة صحيحة وتكرار كل اختبار عدة مرات حتى يرسخ في الأذهان
ففي الاختبار القادم إن شاء الله لن أبين لكم الكود بل سأذكر المطلوب فقط فقد أصبحتوا تعرفون بعض الأكواد
((( بقي لدينا اختبار أخير ومن ثم نبدء في التطبيق العملي ))
أرجو للجميع التوفيق
إجابة الإختبار السادس :
قمت بحل الإختبار بطريقتين في الوصلات أدناه ، مع العلم أني لا حظت أن رسائل أكسيس لا تظهر على الرغم من عدم إدراجي السطر التالي في بعض الأمثلة :
DoCmd.SetWarnings False
والله الموفق .

الأخ الأستاذ فهد
جزاك الله خيرا كثيرا على ملاحظاتك.. تم التعديل علي الأمثلة السابقة بدون مشاكل. ملحق الإختبار السادس وفى إنتظار المزيد...
مرحبا
هل يمكن لي المشاركه ولو إني متأخر
تحياتي
الاخ ابن مسقط الإجابة الخامسة ممتازة جدا
الاخ AliHamdan الاجابة السادسة ممتازة جدا .. وننتظر منك الخامسة
الاخ ابن مسقط الاجابة السادسة ممتازة جدا(( المرة الثانية ))وجميل ان نكتشف اخطاؤنا
الاخ ابن مسقط الطريقة الثانية يمكن استخدامها أيضاً وهي صحيحة ولكن في مثالك خرجت رسالة الأكسس المعتادة مع رسالتك وأيضاً خرجت رسالة (لقد قمت بإلغاء الأمر)إذا ضغطت على (لا) في رسالة الأكسس
أما عن سؤالك ((مع العلم أني لا حظت أن رسائل أكسيس لا تظهر على الرغم من عدم إدراجي السطر التالي في بعض الأمثلة :
DoCmd.SetWarnings False))
فيمكن إلغاء بعض رسائل الأكسس بهذه الطريقة :-
1-خيارات
2-تحرير/بحث
3-تأكيد
4-أزل علامة الصح عن الرسائل التي لا تريد رؤيتها
5-موافق
الاخ Mandour الإجابة ممتازة جداً .. مع ملاحظة عدم اهتمامك بمظهر النموذج كما فعلت في الإجابات السابقة
ABO ABDUUL أهلاً بك معنا .. ولكن قم بالإجابة على الاختبارات السابقة حتى تستفيد من الدروس القادمةإن شاء الله