منتديات | شات | العاب | العاب بنات | العاب باربي | العاب اكشن | العاب طبخ | العاب سيارات | العاب تلبيس | العاب فلاش

اكتب بريدك في المربع ثم اضغط على "اشتراك" لكي يصلك جديد الموقع على بريدك مباشرة
البريد الإلكتروني:
مواضيع حصرية على بريدك أنت فقط  إشترك الآن وفعل إشتراكك من بريدك
 

 

خدمات مسجات جوال بطاقات رسائل حب دليل مواقع شات خليجي  دردشة منتديات عالم حواء عالم الرومانسية

 
    دروس في الأوفيس  الأكسس - Access
 

 

مقدمة للبرمجة باستخدام VBA في Access [الجزء الثاني: الأمثلة]



أمثلة استخدام إجراء الحدث كإستجابة لحدوث هذا الحدث

 

بعد أن تعرفنا على أنواع الإجراءات في الـAccess في الجزء الأول من هذا الدرس، نطبق معاً في الجزء الثاني جميع الأمثلة التي شرحناها في الجزء الأول

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

والآن إلى التطبيق العملي

المثال الأول: الإجراء الفرعي Sub Procedure:

والآن، لنطبق المثال الأول الذي شرحناه بالصور في الجزء الأول، ولنطبقه على قاعدة البيانات Member التي أنشأتموها في الدروس السابقة في هذا القسم:

افترض أننا نريد فتح نموذج "بيانات الأعضاء" عندما يُفتح موذج "إجمالي الأعضاء من كل دولة" - حيث أن كلا النموذجين قمنا ببناءهما في قاعدة بياناتنا في الدروس السابقة-، لعمل ذلك اتبع الخطوات التالية:
  1. من خصائص نموذج "إجمالي الأعضاء من كل دولة" اختر تبويب Event.
  2. عند الحدث On Load قف بالماوس، ستظهر لك قائمة منسدلة بها خيار واحد فقط ألا وهو: Event Procedure، قم بتحديده.
  3. اضغط المربع الذي يحوي على ثلاث نقاط، كما توضح الصورة:


  4. ستفتح لك نافذة VBA وهي نافذة الوحدة النمطية التي يخصصها الـAccess لكل نموذج، وستجد أنها تحوي على تعريف لبداية الحدث ونهايته على النحو التالي:

    Private Sub Form_Load( )

    End Sub

  5. قم بإضافة السطر الذي يحوي على أمر فتح نموذج بيانات الأعضاء كما توضح الصورة التالية:


  6. الآن، اغلق نافذة VBA وقن بحفظ التغييرات التي أجريناها على نموذج "إجمالي الأعضاء من كل دولة" ثم جرب عمل الإجراء الذي كتبناه، افتح النموذج، ستجد أنه بمجرد حدوث Load له سيتم تنفيذ إجراءنا وسيظهر لك نموذج "بيانات الأعضاء"، كما توضح الصورة:

-=-=-=-=-=-=-=-=-=-

 

المثال الثاني: إجراء الدالة Function Procedure:

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

نعم بالضبط، سنستخدم الدالة
FirstOfNextMonth التي تطرقنا لها في الجزء الأول كي تقوم بكتابة تاريخ اليوم الأول من الشهر التالي للتاريخ الحالي كقيمة في مربع نص داخل فورم جديد سننشأه سوياً. النتيجة النهائية ستظهر لنا كما توضح الصورة:

سؤال: أين يتم تعريف أو كتابة الدالة؟
 
أجبنا على هذا السؤال في آخر الجزء الأول، وسنعيد الإجابة هنا: يمكنك تعريف الدالة بصورة عامة في
في الوحدة النمطية القياسية العامة Standard Module، أو يمكنك تعريفها في الوحدة النمطية الخاصة للنموذج Form Module أو للتقرير Report Module. تذكر أنه لا يمكنك استخدام دالة عامة غير معرفة في فئة الوحدة النمطية Class Module كإعداد لخاصية في نموذج أو تقرير.

سنستخدم الطريقة العامة لتعريف هذه الدالة وسنستخدم أبسط طريقة لإسناد القيمة التي ترجعها إلى نموذجنا، كما يلي:

أولا: تعريف الدالة:

  1. افتح أي قاعدة بيانات موجودة لديك، ثم حدد أي Form موجود فيها، ثم إذهب إلى قائمة عرض View ثم إلى code كما توضح الصورة:

    أو يمكنك أن تقوم مباشرة بالضغط على رمز code على شريط الأدوات Database كما توضح الصورة:

    ملاحظة: لا تقلق حول اختيار أي Form للوقوف عليه، لأن الدالة ستعرف بشكل عام.

  2. ستفتح لك نافذة VBA قم بكتابة الدالة التالية فيها:

    Function FirstOfNextMonth( )
    FirstOfNextMonth = DateSerial(Year(Now), Month(Now) + 1, 1)
    End Function

  3. أغلق نافذة VBA.

    ثانياً: ربط الدالة بالنموذج:

    1. قم بإنشاء نموذج جديد في عرض التصميم Design View.

    2. قم بإضافة أداة مربع نص Text Box إليه.

    3. غيّر عنوان مربع النص إلى "التاريخ المفترض للتخرج من الجامعة" أو أي عنوان آخر كما يحلو لك.

    4. من خصائص مربع النص إذهب إلى تبويب Data ثم أضف الكود التالي إلى خاصية "قيمة افتراضية Default Value" كما توضح الصورة:

      =FirstOfNextMonth( )

      ملاحظة: يمكنك وضع الكود في خاصية Control Source كذلك.

    5. احفظ النموذج بأي اسم وليكن Form1 مثلاً.

    6. اعرض النموذج، ستجد أنه يضيف القيمة المرجعة من الدالة إلى الـText Box تلقائياً كقيمة افتراضية :)

    ملاحظات:

    • صحيح أننا لم نتحدث بالتفصيل عن الدوال المبنية مسبقاً في الـVBA والتي استخدمناها في مثالنا مثل DateSerial وYear وNow وMonthولكن لا تقلق يمكنك تعلمها بسهولة.

    • لاختبار التعبيرات البرمجية التي تكتبها في أي إجراء مباشرة في نافذة Microsoft Visual Basic أو VBA، يمكنك إظهار نافذة الترجمة الفورية Immediate window من قائمة عرض View أو بالضغط على Ctrl+G. وإليك طريقة التعامل معها:
      1- اكتب فيها علامة الاستفهام (؟) ثم اكتب التعبير الذي تريد اختبار صحته، ثم اضغط Enter.
      2- ستعيد لك قيمة التعبير أو الدوال التي استخدمتها، انظر للصورة التالية كي تشاهد كيف تعاملنا معها في مثالنا الحالي:


    -=-=-=-=-=-=-=-=-=-

     

في نهاية هذا الدرس بجزأيه أرجو أن تكون بيئة الـAccess البرمجية قد اتضحت تماماً لك أيها القارئ الكريم،



المزيد من المواضيع

تعريف الاستعلام وطريقة عرضه في آكسس، أنواع الاستعلامات، نافذة تحديد الاستعلام!
دورة الأكسيس : الدرس الأول : مقدمة عامة .
تصميم زر الإغلاق في النموذج!
أنشئ قاعدة بياناتك التي ستستند إليها في تعلم طريقة ربط الجداول والاستعلامات.
أنواع العلاقات وطريقة الربط بين الجداول.
الاستعلامات الإجرائية -3 (استعلام التحديث)
استعلامات SQL في Access - حذف مجموعة من السجلات تحت شروط معينة
مقدمة للبرمجة باستخدام VBA في Access [الجزء الأول: الأحداث وإجراءات الأحداث]
إنشاء شريط أدوات خاص بقاعدة البيانات (2)
استيراد البيانات باستخدام الماكرو Transfer Data Base
إنشاء قوائم خاصة بإستخدام الماكرو (2)
منع إدخال سجل مكرر فى حقل فى برنامج الأكسس
وضع اللمسات الأخيرة على تصميم النموذج!
تصميم الجزء الخاص بعرض إجمالي عدد الأسماء التي تبدأ بحرف معين في المثال search.zip
تصميم الاستعلام
إنشاء قاعدة البيانات والجدول
إنشاء شريط أدوات خاص بقاعدة البيانات (3)
دورة الأكسيس : الدرس الثالث : النماذج .
دورة الأكسيس : الدرس الثاني : مقدمة لأكسيس .
تصميم الاستعلام
تصميم قاعدة البيانات والجدول
مقدمة لتصميم قاعدة بيانات ‏فيAccess ‎
خطوات تصميم قاعدة البيانات بإستخدام Access
الحقول في Access

1 2

 

الاقسام الرئيسية

دروس للمبتدئين

--

دروس في أنظمة التشغيل

--

دروس في الانترنت

--

دروس في لغات البرمجة

--

دروس في برمجة المواقع

--

دروس في الأوفيس

--

دروس في الرسوم و التصميم

--

دروس في قواعد البيانات

--

دروس في الألعاب والبرامج

--

دروس في المكونات الصلبة

--

دروس في الشبكات

--

دروس في أمن المعلومات

--

دروس في الذكاء الاصطناعي

--

القائمة البريدية

:: ©2009-2003 www.roro44.com All rights reserved ::