110
ات ان ي ب ل واعد ا ق ة ج م ر ب1 دام خ ت سا( VBA 1

نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

برمجة قواعد1البيانات

VBA)استخدام في الأكسس(

برمجة : لغة إلى مقدمه VBA Accessأولا

1

Page 2: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

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

الأحداث وإجراءات الأحداث

لـ ) البرمجية التعليمات كتابة في for Visual Basic Applications (VBAيتم . عبارات من سلسلة على الإجراء يحتوي إجراءات تسمى Visualوحدات

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

الأمثلة . شرح في استخدمت التي الإجراءات بتنفيذ ومرئيا

الحدث؟ إجراء هو ما

قبل من حدث تشغيل لبدء استجابة تشغيله يتم إجراء هو الحدث إجراءقبل أومن المستخدم

الحدث؟ هو ما

. يستجيب أن يمكن معين كائن مع أو في يقع محدد حدث هو الحدثMicrosoft Access : وفتح بيانات في وتغييرات الماوس نقرات مختلفة لأحداث

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

الدالة :Function Procedureإجراءات

. تتضمن حساب نتيجة مثل قيمة، ترجع دالة تسمى ما غالبا الإجراءاتMicrosoft Visual Basic دالة إنشاء يمكنك المضمنة الدالات من العديد

العبارة بالعبارة Functionباستخدام يمكنك. End Functionوإنهاؤها كماالدالة ترجع المثال، سبيل على اللغة، في مسبقا المبنية الدوال استخدام

Now . الحالي والوقت التاريخ

برمجية تعبيرات أي في استخدامها يمكنك قيم، بإرجاع تقوم الدالة لأن نتيجةفي الأماكن من العديد في Microsoft Accessفي لـ Moduleأو البرمجة

Visual Basic في المعايير تعبير في أو الخصائص إعدادات من العديد في أو. استعلام أو تصفية عامل

مثال:

دالة لإجراء التالي المثال من FirstOfNextMonthيرجع الأول اليوم تاريخ: الحالي للتاريخ التالي الشهر

2

Page 3: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

الدالات باستخدام النتيجة الدالة هذه و Nowو Yearو DateSerialتحسبMonth في مسبقا .VBAالـمبنية

في مكان أي في التعبير في استخدامها يمكنك الدالة، هذه إنشاء بعدMicrosoft Access.

الشهر من الأول اليوم النص مربع يعرض أن تحديد يمكنك المثال، سبيل علىافتراضية قيمة الخاصية بإعداد للمربع افتراضية كقيمة الحالي التاريخ بعد

: الخاصية صفحة في التالي للتعبير نص مربع تحكم بعنصر الخاصة

=FirstOfNextMonth( ( 

ملاحظة:

ومعرفة موجودة الدالة تكون أن يجب لخاصية، الإعداد في دالة أي لاستخدامللنموذج النمطية الوحدة للتقرير Form Moduleفي في Report Moduleأو أو

القياسية النمطية . Standard Moduleالوحدةالنمطية الوحدة فئة في معرفة غير عامة دالة استخدام يمكنك Classلا

Module. تقرير أو نموذج لخاصية كإعداد

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

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

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

. التقرير أو النموذج هذا في الحدث

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

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

الأول المثال لنطبق والآن،" " إجمالي " نموذج يفتح عندما الأعضاء بيانات نموذج فتح نريد أننا افترض

– " ، بيانات قاعدة في بنائهما يجب نموذجين هناك أن أي دولة كل من الأعضاء: التالية الخطوات اتبع ذلك لعمل

3

Page 4: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

: وهو ألا فقط . Event Procedureواحد بتحديده قم ،3.. نقاط ثلاث على يحوي الذي المربع اضغطنافذة .4 لك الـ VBAستفتح يخصصها التي النمطية الوحدة نافذة وهي

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

Private Sub Form_Load( (

End Sub

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

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

حدوث بمجرد أنه ستجد لك Loadالنموذج، وسيظهر إجراءنا تنفيذ سيتم له" " ، الأعضاء بيانات نموذج

الدالة؟ كتابة أو تعريف يتم أينالعامة القياسية النمطية الوحدة في عامة بصورة الدالة تعريف يمكنك

Standard Module للنموذج الخاصة النمطية الوحدة في تعريفها يمكنك أو ، Form Module للتقرير دالة. Report Moduleأو استخدام يمكنك لا أنه تذكر

النمطية الوحدة فئة في معرفة غير في Class Moduleعامة لخاصية كإعداد. تقرير أو نموذج

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

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

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

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

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

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

4

Page 5: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

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

التصميم .1 عرض في جديد نموذج بإنشاء .Design Viewقمنص .2 مربع أداة بإضافة .Box Textقم إليه من " .3 للتخرج المفترض التاريخ إلى النص مربع عنوان غير

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

افتراضية " قيمة خاصية إلى Default Valueالتاليملاحظات:.3

في .1 مباشرة إجراء أي في تكتبها التي البرمجية التعبيرات لاختبارنافذة VBAأو Microsoft Visual Basicنافذة إظهار يمكنك ،

الفورية عرض Immediate windowالترجمة قائمة أو Viewمنعلى :Ctrl+Gبالضغط معها. التعامل طريقة وإليك

1 ( تريد- ) الذي التعبير اكتب ثم ؟ الاستفهام علامة فيها اكتباضغط ثم صحته، .Enterاختبار

2 . استخدمتها- التي الدوال أو التعبير قيمة لك ستعيد

5

Page 6: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

أكسس على نظرة إلقاءقواعد, إدارة نظام هو ، أوفيس مايكروسوفت مجموعة من جزء الأكسس

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

الشكل في مبين هو كما ، قمت 1-1الأكسس الذي الرئيسية الحاويات هو ، التنقل . جزء فيه بيانات قاعدة تشكل التي الرئيسية الكائنات كافة بتخزين

إلخ - - ، والنماذج والاستعلامات الجداول من مجموعات في الأشياء يحتويالتالية القائمة المجموعة تلك ضمن الكائنات على تحتوي مجموعة وكل

الكائنات من أنواع تلخص

Groups المجموعات Navigation pane التنقل جزء

Figure 1-1: The Access Navigation pane1-1الشكل

_ Tables: Tables contain the raw data that all other object types display and

6

Page 7: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

manage. Data in tables is stored in records (rows) and fields (columns)._ Queries: Use queries to sort and filter data from one or more tables._ Forms: Access forms are similar to printed fill-in-the-blank forms, butthey allow you to view and change data stored in Access tables._ Reports: Reports define how data should be presented on printed pages._ Macros: Macros provide a means of automating certain aspects ofAccess without programming in VBA._ Modules: The Modules group, as you soon discover, is one of the placeswhere you store VBA code. If you’re not already familiar with modules,that’s fine. Modules are what this book is really all about.

VBA فهمVB -- قراءة للكمبيوتر يمكن التي التعليمات لكتابة لغة برمجة لغة هي

التطبيقات VBAعملياتها. برامج مع للعمل خصيصا المصممة البرمجة لغة هي ، إكسل ، وورد كتابة . outlookلمايكروسوفت عند الأكسس ، الحال وبطبيعة ،

. المبرمجين البرمجية التعليمات كتابة وعند ، البرمجة لغة في النصبرمجة لغة في مكتوب شيء أي إلى للإشارة المصطلح رموز يستخدمون

الشكل. يظهر ، المثال سبيل على رموز 2-1الكمبيوتر بحيث. VBAبعض. مهامها بتنفيذ الأكسس يقول التي البرمجية التعليمات كتابة يمكنك

7

Page 8: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

2-1الشكل

Figure 1-2: Some sample VBA code

قياسية وحدات على العثور

Class modulesالوحدات فئات

Standard modulesالقياسية الوحدات

3-1الشكل

8

Page 9: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Figure 1-3: Standard and class modules in a database

Finding class modules الوحدات فئاتClass module behind form

Form

4-1الشكل Figure 1-4: Class modules typically hide behind forms and reports

التقرير أو للنموذج نمطية وحدة إلى للوصول طرق عدة لديك1. In the Navigation pane, open the Forms group or Reports group,depending on which type of object you want to open.2. Right-click the name of any form or report and choose Design View.

9

Page 10: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

3. To see the class module for the open form or report, click the (FormDesign Tools( Design tab, and then click the View Code command inthe Tools group (see Figure 1-5(.

Form open in Design view

5-1الشكل

Figure 1-5: Class modules are accessible from form and report Design Views

10

Page 11: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Accessإلى VBAمن وحدة فئة أو قياسية نمطية وحدة في ذلك كان سواء ، نمطية وحدة فتح عند

من منفصل برنامج إطار وهو ، بيسك الفيجوال محرر فتح لأن ذلك ، نمطيةالمهام. شريط زر نرى تزال لا كنت ، المهام شريط إلى نظرنا إذا الأكسس

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

الشكل في مبين هو 6-1كما

Code window

6-1الشكل

11

Page 12: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Figure 1-5

لـ : البرمجة لغة أساسيات VBA Accessثانيا

لغة مع للتعامل الأساسية VBAالمفاهيم

أمثلةالتعريفالمفهوم

معالجتها Objectالكائن يمكن كينونةبرمجيا.

Form, Report, TextBox, ComboBox, CommandButton

,DoCmd, Debug

الطريقةMethod

حقيقية وظائفية أية ( إسنادها) تم مضمنة

. كائن إلى سابقا

Form.Requery, Report.Print,TextBox.SetFocus,ComboBox.Dropdown,DoCmd.OpenForm, Debug.Print

Eventالحدث والذي بكائن مرتبط إجراء

من قدحه عند تنفيذه يتم. المستخدم قبل

Form.Open, Report.NoData,TextBox.AfterUpdate,ComboBox.NotInList,CommandButton.Click

الخاصيةProperty

يعرف لكائن سمة ( ، الحجم مثل مواصفاته

الشاشة ) موقع أو ، اللونفيما ) سلوكه من جانب أو.( مخفيا كان اذا

Form.BackColor,TextBox.ControlSource,ComboBox.RowSource,CommandButton.Picture،Report.Recordsource

البرمجة؟ هي ما إذا

باستخدام بك الخاصة البيانات لقاعدة وظيفة إضافة عملية البرمجة تعنيفي الماكرو )Accessوحدات لـ برمجية تعليمات VBA (for Visual Basicأو

Applications وتقرير نموذج بإنشاء قمت أنك لنفترض المثال، سبيل على. فوقه النقر عند التقرير بفتح يقوم لكي النموذج، لذلك أمر زر إضافة وتريد

إجراء أو ماكرو إنشاء عملية هي البرمجة تكون الحالة، هذه ثم VBAفي

12

Page 13: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

الحدث إعداد زر خاصية فوق النقر يؤدي لكي الأمر بزر الخاصة النقر عند . تقرير، كفتح بسيطة، بعملية للقيام الإجراء أو الماكرو تشغيل إلى الأمرتشغيل إيقاف تستطيع أو العمل بكافة للقيام الأمر زر معالج استخدام يمكنك

. بنفسك بالبرمجة والقيام المعالج

: برامج  ملاحظة من العديد Microsoftتستخدم Office" " ماكرو المصطلحلـ برمجية تعليمات إلى لمستخدمي. VBAللإشارة محيرا ذلك يكون وقد

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

في الماكرو في Accessإجراءات المتوفرة الأوامر من فرعية مجموعة فقطVBA .محرر واجهة من تنظيما أكثر واجهة الماكرو منشئ لك VisualيوفرBasic بدون والكائنات التحكم لعناصر البرمجة إضافة من تمكنك حيث ،

لـ برمجية تعليمات تعلم في. VBAضرورة أنه تتذكر أن أيضا عليك وينبغيتعليمات في Accessمقالات الماكرو وحدات إلى الإشارة تتم ،Access

. لـ برمجية تعليمات إلى الإشارة تتم النقيض، وعلى الماكرو إما VBAبوحدات. VBAبـ تعليمات احتواء يتم بالإجراء أو بالدالة أو البرمجية بالتعليمة أو

لـ أو ) VBAبرمجية النماذج من جزءا تكون التي للفئة النمطية الوحدات في ( وفي فقط الكائنات لتلك برمجية تعليمة على عادة وتحتوي المفردة التقارير ( على عادة وتحتوي معينة بكائنات مرتبطة غير تكون التي النمطية الوحدات

.( " البيانات " قاعدة عبر استخدامها يمكن عمومية برمجية تعليمة

( ( ( ومربعات الأمر كأزرار التحكم وعناصر والتقارير كالنماذج الكائنات تحتويوحدات) إرفاق يمكنك التي الحدث خصائص من متنوعة مجموعة على النص

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

خارج عوامل بواسطة بواسطة Accessالأحداث أو النظام أحداث مثل ، . البيانات قاعدة تصبح وقد أخرى بأحداث مقترنة إجراءات أو ماكرو وحدات

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

. البرمجة من القليل باستخدام المطلوبة النتائج على الحصول

لـ برمجية تعليمات أم الماكرو وحدات أستخدم ؟VBAهل

برمجية تعليمات أو الماكرو وحدات إما استخدام حول قرارك يستند أن يجب. VBAلـ : مشكلة الأمان يشكل إليها تحتاج التي والوظيفة الأمان مسألتين إلى

استخدام يمكن البيانات VBAلأنه أمان بخرق إما تقوم برمجية تعليمة لإنشاء. الكمبيوتر على الموجودة بالملفات بالإضرار بيانات أو قاعدة تستخدم وعندما

لـ برمجية تعليمات تمكين فيجب بإنشائها، غيرك شخص في VBAقام فقط . بإنشاء تقوم وعندما موثوق مصدر من تأتي البيانات قاعدة بأن التأكد حالة

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

13

Page 14: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

قيام ضرورة لتجنب العامة التقنيات بعد فيما المقطع هذا ويتناول. بك الخاصة البيانات قاعدة بتوثيق المستخدمين

وحدات استخدام تحاول أن يجب بك، الخاصة البيانات قاعدة أمان لضمانبرمجة استخدام إلى وتلجأ أمكن كلما لا VBAالماكرو التي العمليات مع فقط

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

. بهذه الماكرو إجراءات استخدام وبتحديد تشغيلها يتم لكي البيانات لقاعدةعلى تحتوي لا البيانات قاعدة أن من التأكد المستخدمون يستطيع الطريقة،

أجهزة على أخرى ملفات أو بهم خاصة ببيانات تضر أن شأنها من برمجة أي. لديهم الكمبيوتر

فإن أوسع، بشكل الماكرو وحدات استخدام على للحث جزئية، OfficeوبصفةAccess 2007 تمكنك التي الجديدة الماكرو إجراءات من العديد على يحتوي

باستخدام بإنشائها تقوم التي تلك من قوة أكثر ماكرو وحدات إنشاء منمن سابقة المتغيرات. Accessإصدارات إنشاء الآن يمكنك المثال، سبيل على

معالجة ويمكنك الماكرو إجراءات بواسطة واستخدامها العمومية المؤقتةبمعالجة الخاصة الجديدة الماكرو إجراءات باستخدام أفضل بشكل الأخطاء

من. السابقة الإصدارات وفي الميزات Accessالأخطاء من الأنواع هذه كانت ، باستخدام فقط في. VBAمتاحة ذلك، إلى يمكنك Access 2007وبالإضافة ،

. الماكرو يصبح تحكم عنصر أو لكائن الحدث خاصية في مباشرة ماكرو تضمينالتحكم عنصر أو الكائن مع ويظل التحكم عنصر أو الكائن من جزءا المضمن

. من السابقة الإصدارات في نسخه أو نقله تم الاحتفاظ Accessإذا يجب كان ، البيانات بقاعدة الاحتفاظ يجعل قد ما وهو مستقلة، ككائنات الماكرو بوحدات

. صعوبة أكثر الأحيان بعض في بك الخاصة

على تحرص أن فيجب تحكم، عنصر أو كائن إلى برمجة بإضافة تقوم عندما: التالي الأفضلية لترتيب وفقا يلي ما استخدام

به .1 موثوق الحالة منح تتطلب لا التي الإجراءات على فقط يحتوي ماكروتشغيلها يتم لكي البيانات لقاعدة

لقاعدة .2 به موثوق الحالة منح تتطلب التي الإجراءات على يحتوي ماكروتشغيلها يتم لكي البيانات

VBAإجراء .3

لا التي الأقصر الإجراءات قائمة بين التبديل يمكنك ماكرو، بإنشاء تقوم عندماالأطول والقائمة تشغيلها يتم لكي البيانات بقاعدة الوثوق حالة منح تتطلب

. الماكرو منشئ في الإجراءات كافة إظهار فوق بالنقر الماكرو إجراءات لكافةبالوسيطات كاملة قائمة أيضا تظهر الإجراءات كافة إظهار فوق وبالنقر

الماكرو .RunCommandلإجراء

14

Page 15: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

الجملة بناء سوى يوجد لا لأنه نظرا وسهولة بسرعة بإنشائها قمت التيعرض ويتم تذكره؛ اللازم .وسيطاتالبسيط الماكرو منشئ في إجراء لكل

الماكرو، وحدات توفرها التي الاستخدام وسهولة المتزايد الأمان إلى بالإضافة: في ترغب كنت إذا الماكرو وحدات استخدام يجب

. ماكرو مجموعة إنشاء هذا يتطلب لمفتاح إجراءات مجموعة أو إجراء تعيين.AutoKeysباسم

. الأولى للمرة بيانات قاعدة فتح يتم عندما إجراءات سلسلة أو إجراء تنفيذباسم ماكرو إنشاء ذلك .AutoExecيتطلب

: الماكرو تشغيل يتم أو AutoExecملاحظة ماكرو وحدات أي قبللـ برمجية بدء VBAتعليمات نموذج بتعيين قيامك حالة في وحتى أخرى،

خيارات الحوار مربع في تعليمات Accessتشغيل أو ماكرو وإرفاقلـ .OnLoadأو OnOpenلحدث VBAبرمجية النموذج بذلك الخاص

برمجة استخدام القيام VBAيجب في ترغب كنت إذا الماكرو وحدات من بدلا: يلي مما بأي

بك الخاصة الدوال إنشاء أو المضمنة الدوال Accessيتضمن     استخدامدالة مثل المضمنة، الدوال من .IPmtالعديد الفائدة دفع بحساب تقوم التي ،

الحاجة بدون الحسابية العمليات لتنفيذ المضمنة الدوال هذه استخدام يمكنكإنشاء . تعبيراتإلى لـ برمجية تعليمات باستخدام أيضا VBAمعقدة يمكنك ،

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

. كائن من أكثر على شائعة عملية لتطبيق التعبيرات في بإنشائها تقوم التي معالجتها أو الكائنات الأسهل     إنشاء من أنه الأحوال معظم في تجد سوف

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

بالإضافة VBAوباستخدام بيانات قاعدة في الكائنات كافة معالجة تستطيع ، . نفسها البيانات قاعدة إلى

النظام مستوى على إجراءات الإجراء     تنفيذ تنفيذ في RunAppيمكنك( مثل آخر برنامج لتشغيل Microsoft 2007ماكرو Office Excel (داخل من

Access ذلك غير الإجراءات من بالكثير للقيام ماكرو استخدام يمكن لا ولكن ، على VBAباستخدام. Accessخارج ملف وجود من التحقق يمكنك ،

واستخدام التلقائي الكمبيوتر، )أو التنفيذ للبيانات الديناميكي )DDEالتبادلإلى مستندة أخرى ببرامج مثل Microsoft Windowsللاتصال ،Office Excel

في 2007 دوال واستدعاء الديناميكي )، الارتباط .Windowsلـ )DLLsمكتبات

15

Page 16: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

الواحدة المرة في سجل استخدام  معالجة مجموعة VBAيمكنك عبر للتنقل . وفي سجل كل على عملية وتنفيذ المرة، في واحد سجل السجلات، منمرة السجلات من كاملة مجموعات مع الماكرو وحدات تعمل المقابل،

واحدة.

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

. المصدر موثوقة البرمجية التعليمة أن من التأكد المستخدمون

شيوعا الأكثر البرمجة مهام لأداء الأمر زر معالج استخدام

في الأمر زر معالج يساعدك فسوف نموذج، إلى أمر زر بإضافة تقوم كنت إذا . زر إنشاء عملية عبر المعالج يأخذك البرمجة باستخدام العمل في الشروع

( . ملف في معينة مهمة بتنفيذ يقوم يقوم Office Access 2007لـ.) accdbأمر ، . ملف في الأمر لزر النقر عند خاصية في مضمن ماكرو بإنشاء .mdbالمعالج

لـ. adpأو برمجية تعليمات المعالج ينشئ ،VBA الماكرو وحدات لأن ، . الحالتين، من أي في هذه الملف بتنسيقات متوفرة غير تكون المضمنة

لـ برمجية تعليمات أو الماكرو تعديل عندئذ لكي VBAيمكنك تحسينها أو. أفضل بشكل احتياجاتك تناسب

زر .1 فوق .Microsoft Officeانقر فتح فوق انقر ثم ،

2.. وفتحها البيانات قاعدة بتحديد قم فتح، الحوار مربع فيزر .3 إضافة تريد الذي النموذج فوق الأيمن الماوس بزر انقر التنقل، جزء في

. التصميم عرض فوق انقر ثم إليه، الأمرتم .4 أنه من تأكد التحكم، عناصر المجموعة في تصميم، التبويب علامة في

التحكم عناصر معالجات استخدام .تحديد

5.. زر فوق انقر التحكم، عناصر المجموعة في تصميم، التبويب علامة في

6.. الأمر زر تضع أن تريد حيث انقر النموذج، تصميم شبكة في

. الأمر زر معالج تشغيل بدء يتم

لترى .7 الفئات قائمة في فئة كل فوق انقر المعالج، من الأولى الصفحة على . قائمة من لتنفيذها الأمر زر برمجة المعالج يستطيع التي الإجراءات

. التالي فوق انقر ثم تريده، الذي الإجراء بتحديد قم الإجراءات،

16

Page 17: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

كنت .8 إذا ما على ذلك ويعتمد الصورة، الخيار فوق أو النص الخيار فوق إما انقر. الأمر زر على صورة أو نص عرض تريد

التالي المربع في النص تحرير فيمكنك النص، عرض تريد كنت إذا. النص للخيار

. القائمة في صورة المعالج يقترح فسوف صورة، عرض تريد كنت إذاإظهار الاختيار خانة بتحديد فقم مختلفة، صورة تحديد تريد كنت إذا

يوفرها التي الأمر زر صور كافة لعرض الصور Office Accessكافة2007. آخر مكان في مخزنة صورة لتحديد استعراض فوق انقر أو ،

. التالي فوق انقر

9. . الاسم هذا يكون ولا اختيارية الخطوة هذه وتعد الأمر لزر معنى ذا اسما أدخل . جيدة فكرة معنى ذي اسم إدخال يعد ولكن الأمر زر على معروضا

إذا ) المثال، سبيل على بعد فيما الأمر زر إلى الرجوع تريد عندما لاستخدامه( ، بك الخاص النموذج على التحكم لعناصر الجدولة ترتيب بإعداد تقوم كنت

. يقوم الأمر زر كان إذا الأوامر أزرار بين التمييز كثيرا الأسهل من يكون حيثتسميته فيمكنك المثال، سبيل على النموذج، أو cmdCloseبإغلاق

CommandClose.10.. إنهاء فوق انقر

.Accessيقوم النموذج على الأمر زر بوضع

11. " الخطوات " هذه فاتبع لك، ببرمجته المعالج قام ما رؤية تريد كنت إذاالاختيارية:

على .1 فاضغط بالفعل، معروضة غير الخصائص صفحة كانت F4إذالعرضها.

2.. الخصائص صفحة في حدث التبويب علامة فوق انقرفوق .3 انقر النقر، عند الخصائص مربع .في

قام Accessيقوم الذي الماكرو ويعرض الماكرو منشئ تشغيل ببدء. . ذلك في ترغب كنت إذا الماكرو تحرير يمكنك بإنشائه المعالج

المجموعة وفي تصميم، التبويب علامة فمن ذلك، من الانتهاء وعند . طالبك إذا الماكرو منشئ لإغلاق إغلاق فوق انقر Accessإغلاق،

التغييرات لحفظ نعم فوق فانقر الخاصية، وتحديث التغييرات بحفظ. التغييرات لرفض لا فوق انقر أو

ثم .1 عرض، فوق انقر عرض، طرق المجموعة ومن تصميم، التبويب علامة من . أنه من للتأكد الجديد الأمر زر فوق انقر النموذج عرض طريقة فوق انقر

. متوقع هو كما يعمل

الماكرو وحدات فهم17

Page 18: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

إلى بالزر الخاصة النقر عند الحدث خصائص بإقران تقوم نموذج، إلى أمر زريتم مرة كل في بأدائها الزر يقوم أن تريد التي الأوامر على يحتوي ماكرو

. فوقه النقر

ماكرو وحدات اعتبار المفيد فيها Accessمن تقوم مبسطة برمجة لغة بمثابةمن قائمة بإنشاء برمجية تعليمة . الإجراءاتبإنشاء تقوم عندما لتنفيذها

بملء تقوم ثم منسدلة قائمة من إجراء كل بتحديد تقوم ماكرو، بإنشاء . الوظائف إضافة من الماكرو وحدات تمكنك إجراء لكل اللازمة المعلومات

الوحدة في برمجية تعليمة كتابة بدون التحكم وعناصر والتقارير النماذج إلىلـ المتوفرة. VBAالنمطية القوائم من فرعية مجموعة الماكرو وحدات توفر

تعليمات VBAفي كتابة عن ماكرو إنشاء في أكثر سهولة الناس معظم ويجدلـ .VBAبرمجية

. التالي الشكل في يظهر الذي الماكرو، منشئ باستخدام ماكرو إنشاء يمكنك

: الماكرو منشئ لعرض

. إذا ماكرو فوق انقر أخرى، خيارات المجموعة في إنشاء، التبويب علامة فيأو نمطية وحدة الزر إما أسفل السهم فوق فانقر متوفر، غير الأمر هذا كان

. ماكرو فوق وانقر للفئة، نمطية وحدة18

Page 19: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

لـ برمجية تعليمات VBAفهم

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

في الماكرو وحدات باستخدام بها تقوم التي قوة. Accessتلك توسيع يمكنكVBA والإجراءات الدوال كتابة وتستطيع أخرى جهات تحكم عناصر باستخدام

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

VBA برمجة باستخدام العمل في للشروع سريعة تضمين. VBAطريقة تمالمقطع في بذلك بالقيام الخاصة إلى الإرشادات الماكرو وحدات تحويل

لـ برمجية على. VBAتعليمات تحتوي جديدة نمطية وحدة الميزة هذه تنشئدالة . VBA إجراء بفتح تقوم كما الماكرو في المماثلة العمليات بتنفيذ يقوم. Visual Basicمحرر في العمل وأثناء الإجراء تعديل في البدء تستطيع لكيعلى Visual Basicمحرر والضغط الأساسية الكلمات فوق النقر يمكنك ،F1

مطور تعليمات تشغيل .Accessلبدء أساسية كلمة كل حول المزيد ومعرفةمطور تعليمات استكشاف عندئذ جديدة Accessيمكنك أوامر واكتشاف

. تريدها التي البرمجة مهام تنفيذ في لمساعدتك

لـ برمجية تعليمات إلى الماكرو وحدات VBAتحويل

استخدام إلى Office Access 2007يمكنك تلقائيا الماكرو وحدات لتحويللـ النمطية . VBAالوحدات وحدات تحويل تستطيع للفئة النمطية الوحدات أو

أو مستقلة ككائنات موجودة أكانت سواء تقرير، أو بنموذج المرفقة الماكرو . غير العمومية الماكرو وحدات تحويل يمكنك وكذلك مضمنة ماكرو كوحدات

. معين تقرير أو بنموذج المرفقة

تقرير أو بنموذج المرفقة الماكرو وحدات تحويل

تم ) أو قبل من إليها الإشارة تمت ماكرو وحدات أي بتحويل العملية هذه تقوم ( ( ( إلى به الخاصة التحكم عناصر من أي أو تقرير أو نموذج في VBAتضمينها

لـ برمجية تعليمات بالنموذج VBAوإضافة الخاصة للفئة النمطية الوحدة إلى . مع وتنتقل التقرير أو النموذج من جزءا للفئة النمطية الوحدة تصبح التقرير أو

. نسخه أو نقله تم ما إذا التقرير أو النموذج

انقر .1 ثم التقرير، أو النموذج فوق الأيمن الماوس بزر انقر التنقل، جزء فيالتصميم فوق .عرض

فوق .2 انقر ماكرو، المجموعة وفي البيانات، قاعدة أدوات التبويب علامة منإلى النموذج ماكرو وحدات ماكرو Basic Visualتحويل وحدات تحويل أو

إلى . Visual Basicالتقريرماكرو .3 وحدات تحويل أو النموذج ماكرو وحدات تحويل الحوار مربع في

يقوم أن تريد كنت إذا ما بتحديد قم البرمجية Accessالتقرير، التعليمة بإضافة

19

Page 20: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

. . للمتابعة تحويل فوق انقر الدوال في كتعليقات

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

. يقوم التقرير أو للنموذج Accessبالنموذج الحدث خصائص بتغيير كذلكإجراءات بتشغيل تقوم لكي التقرير وحدات VBAأو من بدلا الجديدة

الماكرو.

لـ .4 برمجية تعليمات :VBAلعرض وتحريرها كانت .1 إذا التصميم، عرض في مفتوحا التقرير أو النموذج يزال لا بينما

المفتاح على فاضغط بالفعل، معروضة غير الخصائص F4صفحةلعرضها.

مربع .2 أي في انقر الخصائص، بصفحة الخاصة حدث التبويب علامة من ] فــوق ] انقــر ثم ، حــدث إجــراء يعــرض خصــائص. خصــائص لعــرض

. لعرض لتحديده التحكم عنصر فوق انقر معين، تحكم لعنصر الحدثتقرير أو نموذج بتحديد قم الكامل، التقرير أو للنموذج الحدث خصائص

. الخصائص صفحة أعلى في المنسدلة القائمة من

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

. للفئة النمطية الوحدة نفس في أخرى إجراءات أي لعرض

العمومية الماكرو وحدات تحويل

1.. تحويله تريد الذي الماكرو اسم فوق انقر التنقل، جزء فيفوق .2 انقر ماكرو، المجموعة وفي البيانات، قاعدة أدوات التبويب علامة من

إلى ماكرو وحدات .Basic .Visualتحويلفوق .3 انقر ثم تريدها، التي الخيارات بتحديد قم ماكرو، تحويل الحوار مربع في

يقوم. محرر Accessتحويل وفتح الماكرو .Visual Basicبتحويل

لـ .4 برمجية تعليمات :VBAلعرض وتحريرها محرر .1 غير Visual Basicفي المشاريع مستكشف جزء كان إذا ،

القائمة فمن فوق Viewمعروض، انقر ،Project Explorer.2.. باستخدامها تعمل التي البيانات قاعدة اسم أسفل الشجرة بتوسيع قمالماكرو Modulesأسفل .3 النمطية الوحدة فوق مزدوجا نقرا انقر ،

الماكرو المحول- .اسم

محرر .Visual Basicيقوم النمطية الوحدة بفتح

دالة حدث VBAإرفاق بخصائص20

Page 21: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

إلى عمومي ماكرو بتحويل تقوم لـ VBAعندما برمجية تعليمات وضع يتم ، VBA . فلا للفئة، النمطية الوحدة نقيض وعلى القياسية النمطية الوحدة في

. غالبا تحتاج سوف تقرير أو نموذج من جزءا القياسية النمطية الوحدة تكونيتم لكي تحكم عنصر أو تقرير أو نموذج على حدث بخصائص الدالة إقران إلى

. بذلك، وللقيام تريده الذي والمكان الوقت في بدقة البرمجية التعليمة تشغيللـ برمجية تعليمات نسخ إما إقرانها VBAيمكنك ثم للفئة النمطية الوحدة إلى

إلى الحدث خصائص من خاص استدعاء إجراء يمكنك أو حدث بخصائص: التالي الإجراء باستخدام القياسية النمطية الوحدة

محرر .1 . Visual Basicفي المثال، سبيل على الدالة باسم ملاحظة بتدوين قم ، باسم ماكرو بتحويل قمت ))MyMacroإذا هو الدالة اسم يكون فسوف ،

MyMacro.محرر .2 بإغلاق .Visual Basicقمتريد .3 الذي التقرير أو النموذج فوق الأيمن الماوس بزر انقر التنقل، جزء في

. التصميم عرض فوق انقر ثم معه، الدالة إقران4.. معه الدالة إقران تريد الذي المقطع أو التحكم عنصر فوق انقرعلى .5 فاضغط بالفعل، معروضة غير الخصائص صفحة كانت .F4إذا لعرضها الحدث .6 خصائص مربع فوق انقر الخصائص، لصفحة حدث التبويب علامة من

. معه الدالة إقران تريد الذيالدالة )=) .7 باسم متبوعة التساوي علامة اكتب الخصائص، مربع على—  وفي

المثال، = .MyMacroسبيل الأقواس)). تضمين من تأكدحفظ .8 فوق بالنقر التقرير أو النموذج بحفظ وصول قم أدوات شريط من

سريع.باختباره .9 وقم التقرير أو النموذج فوق مزدوجا نقرا انقر التنقل، جزء في

. ينبغي كما تعمل البرمجية التعليمة أن من للتأكد

التعليمات نظام استخدام كيفية تعلم

عملية Office Access 2007يوفر في المساعدة على للحصول طرق عدةالزر. فوق بالنقر وقت أي في التعليمات على الحصول يمكنك البرمجة

لإطار اليسرى العلوية الزاوية في .Accessتعليمات

.Accessيعرض التعليمات إطار

إجراء أو ماكرو بإنشاء كذلك تقوم إجراء VBAوعندما فوق النقر يمكنك ، المفتاح على الضغط ثم مضمنة دالة اسم أو أساسية كلمة أو في. F1ماكرو

يعرض الأحوال، بالنقر Accessأغلب قمت الذي للعنصر التعليمات موضوعاتفوقه.

21

Page 22: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

الأدوات شريط من التنقل أزرار استخدم التعليمات، إطار فتح يتم أن بعد. الصفحات بين للتنقل

ثم المحتويات، جدول لعرض الرئيسية، الصفحة فوق انقر المثال، سبيل علىأو الموضوعات بين للتنقل تحديث أو إيقاف أو الأمام أو السابق فوق انقر

. معلومات عن التعليمات نظام في البحث أيضا يمكنك موضوع تحميل إعادةالأدوات شريط أسفل الموجود المربع في البحث مصطلحات بإدخال معينة

على الضغط ثم .ENTERمباشرة بحث فوق النقر أو

استكشاف عادة المفيد من يكون البرمجة، حول المعلومات عن البحث عندمطور تعليمات Accessتعليمات إلى .Accessبالإضافة

مطور تعليمات إلى بالتبديل Accessقم

1.. بحث الزر بجانب الموجود المنسدل السهم فوق انقر

التي المتوفرة التعليمات بموضوعات قائمة التعليمات إطار يعرض. استعراضها يمكنك

على .2 الموجود المحتوى أسفل فمن بالإنترنت، متصلا كنت ،Office Onlineإذا . من المحتويات لأن الطريقة هذه باستخدام نوصي المطور مرجع فوق انقر

ويب . Microsoft Office Onlineموقع إذا الأحدث المحتويات هي دائما تكونقدرة بتعطيل بك الخاص النظام مسئول قام إذا أو بالإنترنت، متصل غير كنت

تعليمات عرض بإمكانك يزال فلا بالإنترنت، الاتصال على التعليمات إطار

22

Page 23: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

أو .3 المحتويات جدول في الارتباطات باستخدام التعليمات استعراض يمكنكثم الأدوات شريط أسفل مباشرة المربع في البحث مصطلحات بإدخال

المفتاح على .ENTERالضغطتعليمات .4 إلى الزر Accessللرجوع بجانب الموجود المنسدل السهم فوق انقر ،

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

الاتصال دون التعليمات استخدام حول المعلومات من المزيد على للحصولمن اليمنى السفلية الزاوية في الاتصال حالة قائمة فوق انقر الاتصال، مع أو

. الخيارات هذه توضيح فوق انقر ثم التعليمات، إطار

وثوابت : متغيرات من البيانات أنواع ثالثا

Binary ( ثنائية )بيانات

الأعظمي .. الحد الطول الصغيرة .. .8000ثابت الصور لتخزين يستخدم بايت

Varbinary ( ثنائية )بيانات

الأعظمي .. الحد الطول بايت .8000متغير

Bit ( 0 ,1 (

القيمتين ) إحدى ) .. )1أو) )0يمتلك / ((/ ( خطأ) صواب لا نعم لـ مكافيء وهو1( ( لا=) .0نعم=

Char ( نص ) ) أحرف(

عن يزيد أن بـ .. .. 8000يمكن الطول حددت إذا الطول ثابت 20حرف مثلاعلى يحتوي الحقل الـ 5وكان من المتبقي الفراغ ملء سيتم خانة15أحرف

المسجد : ] ]. هكذا المتبقية

23

Page 24: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Varchar ( نص ) ) أحرف(

عن يزيد أن إذا .. .. 8000يمكن فمثلا فيه المدخل حسب متحول بطول حرفبـ طوله وأدخلت 20حددت فقط 5حرفا أحرف الخمس على سحتوي أحرفملء غير المسجد ] ].15من هكذا المتبقية خانة

Datetime ( وقت و )تاريخ

/ يناير من تبدأ محتملة ديسمبر/ .9999/31إلى 1/1753قيمة

Smalldatetime ( / وقت ) )صغير ) تاريخ

Money ( عملة(

Smallmoney ( عملة(

فقط .. . عشريتين خانتين إلى فيه القيمة تحويل يتم صغير أموال

Nchar

يساوي .. 4000يحتوي حجما يشغل الطول ثابت يونيكود رمز 2رمز لكل بايت.

Text

مذكرة . لـ مكافيء

Ntext ( تشعبي )ارتباط

باختيار ) ) تفعيله ويمكنك مفعل غير الارتباط متحول بطول. ( ( ( نموذج) في حقل في تشعبي ارتباط للخاصية نعم

Decimal( أرقام (

ثابتة .. . دقة صحيح عدد

Numeric ( أرقام(

ـ لـ .decimalمطابق

24

Page 25: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Float ( أرقام(

للنوع .. .. مكافيء الحقيقية للقيمة تقريبية قيم على يحتوي عائمة بفاصلةDouble.

Int ( أرقام(

للنوع .. مكافيء صحيحة .Long Integerقيم

Nvarchar ( نص ) ) أحرف(

يونيكود .

Real ( أرقام(

يأخذ .. موجبة أو سالبة عائمة فاصلة ذات أرقاما يحتوي حقيقي خانات 7عددللنوع .. . مكافيء الحقيقية للقيمة تقريبية قيم على يحتوي الدقة أجل من

Single.

Smallint ( أرقام(

للنوع .. مكافيء صحيحة .Integerقيم

tinyint ( أرقام(

إلى صفر من يبدأ صحيح بيانات . 255رقم نوع بايت .Byteيكافيء

timestamp ( الوقت )طابع

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

.. .. فيمكن منه القراءة يمكن ولا للمقارنة الحقل هذا الجدول في النوع هذاله . قراءة آخر منذ للصف تم تحديث آخر لمعرفة منه قيمتين مقارنة

Uniqueidentifie (GUID( ( أرقام(

ملقم في فريد .msdeرقم

Image( صورة(

25

Page 26: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

( كائن للنوع ) .OLEمكافيء

وعناصر : وربطها النماذج مع التعامل رابعاالبيانات مع التحكم

البيانات لمدخل استخدام واجهة وتكون للتطبيق استخدام واجهة هي النماذجبشكل) ) التطبيق في البيانات كافة إدارة من تمكنه والتي للتطبيق المستخدم

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

نوعان : النماذج أنواع

جملة  )1 أو استعلام أو جدول إما بيانات مصدر على مبني يكون الأول النوعSQL . ( المنظم ) النموذج النوع هذا ويسمى

أو) 2 استعلام أو لجدول يستند لا انه أي بيانات مصدر له يكون لا الثاني النوعالمنظم ) ) . SQLجملة غير النموذج النوع هذا ويسمى

26

Page 27: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

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

الخصائص :

الموضوعة التحكم لعناصر بالنسبة الأمر وكذلك الخصائص النماذج تملكقراءتها يمكن التي الخصائص من قليل عدد وجود من فبالرغم النموذج ضمن

لغة ضمن فقط إسنادها موجودة VBAأو تكون الكائن خصائص أغلبية فإنالخصائص ورقة . Property Sheetضمن للخصائص الأساسية الأربعة فالفئات

تنسيق بيانات Formatهي ،Data ،

ذلك Eventحدث غير و ،Other . تملي التي هي المستخدمين و الزبون فحاجةالخصائص . تعيين يكون قد بذلك تقوم متى و تعينها التي الخصائص ماهي عليك

النماذج أغلبية تحوي سوف ولكـن ، للبعض تحتاجة ما كل الخصائص ورقة ضمن . الاستجابة على القدرة تعتمد المستخدم مع البرمجي التفاعل من نوعا لديك

لغة باستخدام الخصائص إسناد على بقوة المستخدم .VBAلدخل

؟ : ) ) الشيفرة تذهب أين الحدث خصائص

تبنى . نموذجيا للمستخدم الاستجابة على قدرته من غالبا النموذج قوة تنشألغة . تستطيع ولكن المقصود الدخل على إلى VBAالاستجابة الاستجابة أيضا

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

النموذج . خلـف شيفـرة المصطـلح في غالبـا

الحدث خلف الشيفرة تكون أن يجب بل صحيحة الشيفرة تكون أن كافيا ليسالشيفرة . مشكلة حل يتم غالبـا الشيفرة هذه قدح يتم لن فإنه وإلا الصحيح

لمعرفة . الحاجة إلى إضافة لذا مختلف حدث إلى نقلها خلال من لاتعمل التيلغة كتابة ترتيب VBAكيفية أو بتوقيت علم على تكون أن المهم من ،

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

النموذج . كائنات ضمن و نموذج ضمـن استخدامـا الأكثر الأحداث من

، الحدث اسم من الأول الحرف تكبير مع فراغات الأحداث تملك لا ، برمجيامثلا :

Open وBeforeUpdate.

27

Page 28: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

عند الأحداث

Open. ( ( إلغائه يمكن النموذج فتح

Close الشاشة من إزالته تتم أن قبل ولكن ، النموذج . إغلاق

Load. النموذج تحميل

Unload

لذلك ، وإغلاقه تفعيله إلغاء وقبل النموذج تحميل إلغاءكان إذا فيما الحدث هذا ضمن المعايير تحدد أن يمكن . الحدث إلغاء يمكن لا أنه وبما مفتوحا النموذج ترك يجب

Close طريقة بتضمين تسمح التي المرحلة هي هذه ، النموذج . إغلاق عملية لإيقاف

Click. التحكم عنصر أو النموذج من قسم على واحدة مرة النقر

DblClick عنصر أو النموذج من قسم على بالفأرة مرتين النقرالتحكم .

Current ينتقل أو النموذج فتح عند التركيز على السجل حصولمختلف . سجل إلى التركيز

Dirty. الحالي السجل على تعديل أي بإجراء المستخدم قيام

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

BeforeUpdate ( ( النموذج على تغيير أو جديدة بيانات التحديث إتمام قبلالتحديث – . إلغاء يمكن لذا تحكم عنصر أو

AfterUpdate. مستقل تحكم عنصر أو نموذج سجل تحديث

AfterInsert. جديد سجل هو تحديثه تم الذي السجل

Change . يطبق هذا أن الذآر المفيد من تحكم لعنصر قيمة تعديلوسرد تحرير لمربع النصي القسم أو نص مربع على فقط

الجدولة . تحكم لعنصر الصفحات بين والانتقال

28

Page 29: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Timer. بالخاصية محددة نظامية زمنية فترات إلى الوصولTimerInterval

NotInList التحرير مربع ضمن موجودة ليست قيمة المستخدم يدخلالسرد . و

MouseMove. التحكم عنصر أو النموذج من قسم فوق الفأرة تحريك

Enterتحكم . عنصر ضمن التحرير مؤشر فيزيائيا المستخدم وضع

الجدولة مفتاح باستخدام ذلك تحقيق مفتاح Tabيمكن أوفأرة . Enterالإدخال بنقرة أو

تستطيع أنك إلا ، وقوعها ترتيب و بالأحداث شاملة قائمة وجود عدم من بالرغمبرنامج مساعدة على حدث Access 2007الإطلاع حول معلومات على للحصول

محدد .

خدمة و Office Onlineتعرض مرتبطة أحداث خمسة إلى ثلاثة من نموذجيا : . الأحداث تقع النموذج فتح عند المثال سبيل فعلى مختصرا شرحا تمنح

التالــي : بالترتيب

Open ، Load ، Resize ، Activate ، Current . بإغلاق كثيرا الأحداث تــرتبـط ويلي : كما وتقع ، Unloadالنموذج Deactivate ، Close . الحدث يكون أن يمكن

Close بالذين سجل إنشاء أو آخر نموذج فتح مثل أمور لهكذا الآلية هوالنمـوذج . استخدموا

الأمر : زر خصائص

أهمها : من الأوامر لزر خصائص عدة هناك

المرور : عند المؤشر إظهار ❖Cursor On Hover

إصبع ) مع صغيرة يد التشعبي الارتباط يد رمز إلى يتغير أن المؤشر تمكنالزر ) . فوق المرور عند مؤشر

للصورة : التوضيحية التسمية ترتيب ❖Picture Caption Arrangement

التسمية ترتيب ثم من و صورة مع توضيحية تسمية إضافة من تمكنكتوضيحية تسمية بلا وهي الموجودة الخيارات ضمن No Pictureالتوضيحية

29

Page 30: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Caption عام ،General أعلىTop أسفل ،Bottom يسار ،Left يمين و ، Right.

تسمية تضمين يمكن أنه للصورة التوضيحية التسمية ترتيب الخاصية تعنيالتنقل . أزرار تملك قد المثال سبيل فعلى أوامر زر ضمن صورة مع توضيحية

مزدوجة . أسهم مع جنب إلى جنبا المتوضعة التالي و السابق

لبرنامج جديد إصدار كل يصف . Accessيعرض كائن لكل إضافية خصائصالمثيرة و الجديدة بالميزات المرتبطة الخصائص من بعضا التالي الجدول

للنماذج .

على الميزة الفائدةتطبق

التاريخ منتقى نص إظهار تحكم مربع عناصر من مزيد لاActiveX.

عناصر التوسعة جميعالتحكم

على المحتوى وضع من تمكنكالخلية . حد من معروفة مسافة

عناصر الارتساء جميعالتحكم

التحكم عناصر إرساء يمكنإلى التحكم عناصر ومجموعات

أو اليسار، الأسفل، الأعلى،النموذج،. تمديد يتم عندما اليمين

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

خطوط أسلوبالشبكة

عناصر جميعالتحكم

برنامج في للخلايا ، Excelمشابهتحكم عنصر كل يملك أن يمكنويمكن ، جانب لكل به خاصا حدا

، صلبا ، شفافا الحد هذا يكون أنخطوط . شكل على أو منقطا

النموذج اتجاهج المنقسم نموذ

تعرض سوف أين تحديد يمكنك : الأعلى، في البيانات ورقة

اليمين . أو اليسار، ، الأسفل

30

Page 31: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Operator Meaning

= Equal to

< Less than

<= Less than or equal to

> Greater than

>= Greater than or equal to

<>Not equal to

كود كل يوضع أين31

Page 32: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

يوضع الكود في الوحدة النمطية( أنشاء وحدة نمطية جديدة ) أو من خلال الكائن ( مربع نصمثلا ) الذي تريد إضافة الكود له من خلال خصائص --< إنشاء حدث --< منشئ البرامج.

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

فيوضع داخله.- الكود الموجود في الموديل:1

أما يكون في روتين فرعيsub routineلها أي اسم مثل

Sub mm()و تنتهي بend sub

مثال sub showamessage()

msgbox "mm"end sub

و هذا في حالة مجموعة من التعليمات التي تكون جزء خاص و تنفذ بمفردها أو تستدعي داخل روتين فرعي آخر

و إما أن تكون داخل دالةfunction

function mm()end functionو هي تنتهي ي

function showamessage(x)msgbox "mm"

showamessage = x*xend function

و هي تستخدم للعودة بقيم أو لتنفيذ الدالة علي المتغير الموجود بها36 يكون 6 ، و علي 4 يكون الناتج 2فتنفيذ الدالة السابقة علي رقم

يعني فى وسط أي كود نكتبy= showamessage(4)

Y = 16فتصبح قيمة أما عن الكود الخاص باكائنات :

objectsمثل الفورم أو التقرير فيكون مرتبط بأحداث معينة

تجدها فى الخصائص الخاصة بالكائن و اسمها أحداثEvents

مثالPrivate Sub Form_Open(Cancel As Integer)

msgbox "koko"End Sub

و اسم الروتين الفرعي يكتب تلقائيا بمجرد الاختيار من مربع خيار الأحداث الخاص بالكائنSub أو Functionقواعد أساسية لكتابة

مـلاحـظــــــــات:Sub أو Function - نعني بالوظيفة هنا 1

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

وذلك لأن الكود الذي يتكرر مرة واحدة أسهل في صيانته واختباره واستخدامه والتعديلعليه ، بخلاف الكود الذي يتكرر مرات عديدة .32

Page 33: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

موضعا ، وربما تنسى بعض المواضع أو تخطئ فيها فينتج عن هذا عدد من20عليها في الأخطاء الأخرى .

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

حاول قدر الإمكان أن تكون الوظائف قصيرة القاعدة الثانية : ذلك أن الوظيفة إذا لم تكن قصيرة فإن هذا يعني أنها تقوم بعدد من الأعمال ، والمفضل

أن يكون ما تقوم به الوظيفة عمل محدود ، لكي تسهل صيانتها ولكي يمكن إعادةاستعمالها.

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

الوسائط التي تحتاجها الوظيفة .ما هي الوسائط ؟

هي تلك العوامل التي يتم إرسالها إلى الوظيفة أو الروتين الفرعي حتى يتم تقييمها أو تعديلها عن طريق سطور الشفرة في الوظيفة أو الروتين الفرعي ، أي أنها هي البيانات

التي يتم نقلها بين أقواس مستديرة في الروتين الفرعي أو الوظيفة .مثلا :

code:

function MyTest(A as String,B as Integer) as booleansub DoTest(A as variant,B as Integer)

DoTest أو الروتين الفرعي MyTest هما وسيطان يتم تمريرهما للوظيفة B , Aفهنا استخدم معرفات الوسيطة لمنع إساءة استخدام المتغيرات القاعدة الرابعة :

لكي توضح تماما للبرنامج الغرضByVal ByRef Optionalاستخدم معرفات الوسيطة الذي تريده أثناء تمرير المتغيرات كوسائط .

ما هي المتغيرات ؟ Global أو Const أو Dimإنها باختصار ما يفضل أن نعلن عنها باستخدام

فمثلا : Dim A as Integer

Aهي متغير بدون الإعلان عنها فإن هذا لا ينفي عنها أنها متغيرAوحتى لو استخدمت

راجع الرابط التالي لمعرفة المزيد :http://www.arabteam2000.com/vb/showthread.php?

s=&threadid=17221

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

قبل تمرير الوسائط وليس أثناء عمل الوظيفة ويفضل أن تنص على هذه الشروط في الوظيفة كتعليق

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

33

Page 34: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

والغرض من هذه القاعدة هو تقليل سطور الوظيفة وتبسيطها .

استخدم التعليقات عند الحاجة إليها : القاعدة السادسة قم بإضافة عبارات تصف ما تقوم به سطور الوظيفة ، وأسباب استخدامها ، فهذا أفضل دليل لك ولغيرك عند مراجعة الوظيفة أو تعديلها أو محاولة الاستفادة منها . خاصة أنك قد تراجع الوظيفة بعد فترة طويلة من كتابتها، مما يصعب عليك أن تتذكر المراد ببعض

الأسطر ولماذا كتبت. مع ملاحظة أن بعض الأسطر في الوظائف لا تحتاج إلى تعليق، لأنها واضحة المعنى

والهدف. ومما قد يساعد على هذا الوضوح تسمية المتغيرات والوسائط بأسماء لها معاني، بحيث

.إذا رجعت لها بعد مدة طويلة تعرف المراد بها بمجرد الإطلاع عليها دون أي تعليق

شرح الدوال

الشرط أداة IF استخدامهذه الأداة هي شرطية.. بمعنى أنه لن يتم تنفيذ أمر معين إلا إذا تحقق شرط معين .

IFنطرح مثال لتقريب عمل هذه الأداة لدى في برنامجي زر فيه( أمر حذف سجل) عند الضغط على هذا الزر يتم حذف سجل

من البرنامج ... ولكني أريد أن لا يقوم هذا الزر بحذف أي موظف يكون بالمرتبة العاشرة فما فوق أما من المرتبة الأولى وحتى العاشرة فيتم الحذف دون تردد فكيف

IFيتم عمل ذلك .. نقول يتم عمل ذلك عن طريق أداة الشرط فهذه الأداة تعمل بهذه الطريقة :

نذكر الأداة أولا ثم نذكر الكائن الذي نريد وضع الشرط عليه ثم نذكر الشرط ثم الأمر الذي نريده أن ينفذ إذا تحقق هذا الشرط ثم نضع أمر آخر يتم تنفيذه إذا لم يتحقق

الشرط ثم ننهي عمل الدالة .

هكذا ..

code:

IF [الكائن الذي عليه الشرط]=[الشرط] THEN هنا نضع الأمر الذي نريد تنفيذه إذا تحقق الشرط ELSE

34

Page 35: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

هنا نضعه الأمر الآخر إذا لم يتحقق الشرطEND IF

توضيح : (الكائن الذي عليه الشرط ) قد يكون مربع نص منظم أو غير منظم وقد يكون مربع

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

أم علامة( يساوي ) فهي تتغير بحسب بناء هذه الأداة فقد تكون = أو > أو < أو >< أوغير ذلك بحسب الشرط الذي لدينا .

أما ( الشرط ) فقد يكون نص أو رقم أو تاريخ أو غير ذلك .. أما الأمر الذي نضعه فقد يكون أمر حذف سجل أو أمر فتح نموذج أو رسالة أو تغيير

بيانات في مربع نص آخر أو تسمية أو غير ذلك بحسب ما نريده ..

المثال الأول :نشأ نموذج وسمه نموذج الشرط .. ضع فيه مربعي نص غير منظمين ا

text1المربع الأول سمه text2المربع الثاني سمه

ضع أمر زر على هذا النموذج ( اذهب إلى خصائص هذا الزر .. ثم حدث .. ثم عند النقر .. ثم أختر ( إجراء حدث ) ثم اضغط على النقاط الثلاث نقاط (...) التي بجواره ليفتح لك محرر الفيجوال بيسك الذي

سوف نضع الكود فيه ) حسب ما تم شرحه ولكن بهذه الصورة .IFثم ضع الأداة

وبعد الضغط على هذا الزر يخرج10 الرقم text1إذا كتبت في مربع النص المسمى يحوي غير ذلكtext1 وإذا كان المربع 50 يخرج الرقم text2في مربع النص المسمى

100 يحوي text2يكون المربع تكون الإجابة بهذه الطريقة..

code:

IF text1 = 10 THEN Text2 = 50 ELSE Text2 = 100END IF

الإجابة: عند عمل أمر زر

اضغط يمين الفار واختار خصائص حدث – عند النقر – اختر ( إجراء حدث ) – ثم اضغط النقاط ( ... ) – واكتب التالي

code:

35

Page 36: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

IF text1 = 10 THEN Text2 = 50 ELSE Text2 = 100END IF

المثال الثاني :في هذا المثال أريدك أنت أن تصيغ الجملة الشرطية بناء على ما يلي :-

txt1نحتاج إلى مربع نص غير منظم في النموذج باسم نحتاج إلى زر أمر في النموذج أيضا

نحتاج إلى وجود نموذجين آخرين غير هذا الذي عليه زر الأمرFF1النموذج الأول باسم FF2النموذج الثاني باسم

أما النموذج الذي عليه زر الأمر فسمه كما تشاءtxt1نريد فتح نموذج بناء على شرط معين في مربع النص المسمى

والجملة الشرطية تقول :

FF1) افتح النموذج المسمى موافقفيه كلمة ( txt1إذا كان مربع النص المسمى FF2وإلا افتح النموذج المسمى

نهاية الجملة الشرطيةطبعا الحدث يتم وضعه في زر الأمر هذا عند النقر

للعلم فقط الأمر الذي يقوم بفتح النموذج هو

code:

DoCmd.OpenForm "FF1"

إلى اسم النموذج الذي نريدFF1نقوم بتغيير

:الإجابة على المثال الثاني

نضع الكود التالي في حدث عند النقر على الزر

code:

If [txt1] = "موافق" Then

DoCmd.OpenForm "FF1"

ElseDoCmd.OpenForm "FF2"

36

Page 37: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

End IfEnd Sub

: المثال الثالث or و Andاستخدام

مع الجملة الشرطيةالأدوات المطلوبة لكل من النموذجين هي :

txt1مربع نص غير منظم باسم txt2مربع نص غير منظم باسم

زر أمر Orاستخدام

)1009 هي (موسى الحربي ) أو الرقم (txt1إذا كانت الكلمة الموجودة في )أصفر)txt2 (أحمر) ولون مربع النص txt1فيكون لون مربع النص

)أزرق)txt2 )أخضر) ولون txt1وإذا كانت غير هاتين الكلمتين فيكون مربع النص نهاية الجملة الشرطية

Andاستخدام txt2 هي (موسى) والكلمة الموجودة في txt1إذا كانت الكلمة الموجودة في

هي(الحربي( )أصفر (txt2)أحمر) ولون مربع النص txt1فيكون لون مربع النص

وإذا كان أحد مربعي النص يحوي غير هاتين الكلمتين فيكون مربع النصtxt1 أخضر( ولون( txt2)أزرق(

نهاية الجملة الشرطية في نموذج Andطبعا استخدام

في نموذج آخر مستقلOrواستخدام :codeللعلم فقط الحدث الذي يقوم بتلوين مربع النص هو

txt1.BackColor = 255

إلى اللون الذي تريد255 إلى مربع النص الذي تريد وغير txt1غير أما أرقام الألوان المطلوبة فهي :

255 اللون الأحمر

16711680 اللون الأزرق

65535 اللون الأصفر

32768 اللون الأخضر

الإجابة

الأولى الفقرة

37

Page 38: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Option Compare Database

Private Sub Command4_Click(( "Then "الحربيAnd ]Text2[ " =]If]Text1موسى = "

Text1.BackColor = 255Text2.BackColor = 65535ElseText1.BackColor = 32768Text2.BackColor = 16711680End IfEnd Sub

الثانية الفقرةOption Compare Database

Private Sub Command4_Click((If ]Text1[ = " الحربي Or "100" Then " موسىText1.BackColor = 255Text2.BackColor = 65535ElseText1.BackColor = 32768Text2.BackColor = 16711680End IfEnd Sub

المثال الرابع :Else Ifسوف نستخدم

الأدوات المطلوبة في النموذج هي :TNN- مربع نص غير منظم باسم 1txt1 - مربع نص غير منظم باسم 2txt2 - مربع نص غير منظم باسم 3txt3 - مربع نص غير منظم باسم 4 - زر أمر5

TNNقم بإخفاء جميع مربعات النص الثلاثة ما عدا المربع

طريقة الإخفاء كما يلي :-وأنت في وضع تصميم النموذج ضع مؤشر الفأرة على المربع الذي تريد إخفاؤه

ثم أضغط على يمين الفأرة ثم اختر خصائص ثم ( تنسيق ) ثم (مرئي) وغير الخاصية من (نعم ) إلى (لا( فقط

: المطلوب للمثال هو تنفيذ ما يلي )1 يحتوي على الرقم ( TNNإذا كان مربع النص

txt1 وإظهار المربع txt3 والمربع txt2يتم إخفاء المربع )1 يحتوي على الرقم ( TNNوإذا كان مربع النص

38

Page 39: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

txt2 وإظهار المربع txt3 والمربع txt1يتم إخفاء المربع ) 3 يحتوي على الرقم ( TNNوإذا كان مربع النص

txt3 وإظهار المربع txt2 والمربع txt1يتم إخفاء المربع elseوإلا

txt3 و txt2 و txt1يتم إظهار جميع المربعات وهي نهاية الجملة الشرطية

للتوضيح :استخدم طريقة مشابهة لهذه مع التغيير طبعا ليناسب المطلوب ..

code:

If [...] = 1 Then[...] = 2ElseIf [...] = 3 Then[...] = 4ElseIf [...] = 5 Then[...] = 6Else[....]=123End If

للعلم الكود الذي يقوم بإخفاء مربع النص وإظهاره هوللإخفاء

code:

Txt1.Visible = Falseللإظهار

code:

Txt1.Visible = True

الإجابة Private Sub Ok_Click((

If ]TNN[ = "1" Thentxt1.Visible = True txt2.Visible = False txt3.Visible = False

ElseIf ]TNN[ = "2" Thentxt1.Visible = Falsetxt2.Visible = Truetxt3.Visible = False

ElseIf ]TNN[ = "3" Thentxt1.Visible = False

39

Page 40: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

txt2.Visible = Falsetxt3.Visible = True

Elsetxt1.Visible = Truetxt2.Visible = Truetxt3.Visible = True

End If

End Sub

المثال الخامس :الأدوات المطلوبة في النموذج هي :

MSG- مربع نص غير منظم باسم 1فقط

المطلوب للمثال هو تنفيذ ما يلي: يحتوي على كلمة (حذف )MSGإذا كان مربع النص

تخرج علينا رسالة هل تريد الحذف ؟elseوإلا

تخرج علينا رسالة تم إلغاء الأمرنهاية الجملة الشرطية

(( ملاحظة )) : سوف نضع الكود هذه المرة في حدث (عند الخروج ) لمربع النصMSGكنوع من التغيير في وضع الأكواد

للعلم : طريقة كتابة الرسالة المطلوبة هنا هي كالآتي

code:

MsgBox "هل تريد الحذف؟", vbOKOnly, "تحذير"40

Page 41: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

طريقة كتابة الرسالة :

MsgBoxنكتب أولا : ثم نضع علامتي تنصيص هكذا " " وهي حرف الطاء مع ضغط الشفت

ثم نكتب الرسالة بين هاتين العلامتين ثم نضغط على حرف الواو بعد تحويل اللغة إلى الإنجليزية ليخرج علينا الأوامر الخاصة

بالرسالةvbOKOnlyنختار منها

ثم نضغط على حرف الواو مرة أخرى بعد تحويل اللغة إلى الإنجليزيةثم نضع علامتي تنصيص هكذا " " وهي حرف الطاء مع ضغط الشفت

ثم نكتب عنوان الرسالة بين هاتين العلامتين وهي هنا ( تحذير(

ولزيادة الفائدة عن رسائل الأكسس راجع هذا الرابط :http://www.msaccess4arab.com/Top/Functions/msgbox/index.htm

وسوف نأخذ في المحاضرة القادمة إن شاء الله رسالة التحذير أو السؤال وفيها زري(نعم) و ( لا ( فإذا ضغطنا على (نعم) ينفذ حدث وإذا ضغطنا على (لا) ينفذ حدث آخر

الإجابة Option Compare Database

Private Sub MSG_Exit(Cancel As Integer(If ]MSG[ = "حذف" Then MsgBox " الحذف؟ تريد "تحذير" ,vbOKOnly ,"هلIf ]MSG[ <> "حذف" Then MsgBox " الأمر إلغاء الغاء " ,vbOKOnly ,"تم تم لقد مبروك"الامرEnd Sub

بالنسبة للمثال الثالثانظر الفرق .. و دقق لتستفيد في المرات القادمة

code:

الكود بعد التعديل'If [txt1] = "موسى الحربي" Or [txt1] = 100 Then txt1.BackColor = 255 txt2.BackColor = 65535 Else txt1.BackColor = 32768 txt2.BackColor = 16711680End If

الكود قبل التعديل'If [txt1] = "موسى الحربي" Or "100" Then

41

Page 42: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

txt1.BackColor = 255 txt2.BackColor = 65535 Else txt1.BackColor = 32768 txt2.BackColor = 16711680End If

هل يمكن دمج السطور الشرطية كسطر واحد على الصورة Then Txt1.visible, txt2.visible, txt3.visible=true

استخدام الكود وهوcode:

Then Txt1.visible, txt2.visible, txt3.visible=true

الكائنات : مع التعامل ObjectخامساVBAفي Collectionsوالمجموعات

أن يجب التسجيلات مجموعة مع التعامل وطرق تفاصيل في نخوض أن قبلأيضا البعض يسميها والتي التسجيلات بمجموعة المقصود هو ما نعرف

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

وبناء جداول عدة من مبنية تكون أن وممكن ، حقول عدة من مؤلف واحدتعليمات أو الاستعلامات نتائج جميع وتعتبر معقدة، تكون قد شروط SQLعلى

تسجيلات مجموعات

التسجيلات الكائنات Recordsetمجموعة وأهم أكثر من يعتبر ، كائن هيفي ، VBAاستعمالا

الكائن عن تتكلم DAO : Data Access Objectفي Recordsetومحاضرتنا

من أكثر المهم الكائن هذا في و 30يوجد ) 18خاصية كل ) وتقريبا أمر طريقةأكسيس بيانات محرك والتعديل Jetقوة والحذف الإضافة عمليات في ،

الكائن في تكمن البيانات على والتصفية والفرز Recordsetوالبحث

أن منكم أرجو التسجيلات مجموعة مع التعامل كيفية بشرح البدء وقبلكاملة : المحاضرة إتمام بعد إلا تماما نفهمها لن التي التالية الجملة تحفظوا

42

Page 43: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

الكائن" نوع على يعتمد التسجيلات مجموعة في والكتابة القراءة سلوك إنADO أوDAO البيانات نوع على كذلك بواسطة SQLأو Jetويعتمد المعرفة

"Recordsetالكائن

بتقنية التسجيلات مجموعة مع التعامل أن تأكيد ولن ADOوبكل الأحدث هيبطريقة ) ) الأمثلة وضع أمكن حيثما وسأحاول نهائيا ذلك وكذلك ADOنغفل

DAO منها عديدة فوائد ذلك وفي بالجديد القديم ربط أحاول بذلك أنني علما ، أحدى مع يتعامل لم ممن البعض وتشجيع الطريقتين على الضوء إلقاء

فيها والتي الأمثلة فهم في منها يستفيد الأقل على أو يستعملها أن التقنياتالتقنيات هذه من مزيجا

في التسجيلات مجموعات من أنواع أربعة DAOيوجد

ولا Tableالنوع 1- ، فقط الحالية البيانات قاعدة في جدول لتحديد ويستخدمويمكن ، أخرى قاعدة من مرتبط جدول أو استعلام لتحديد استخدامه يمكن

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

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

. العملي التطبيق

فيها بيانات قاعدة الموظفين )3لدينا ا فقط والأقسام) )employeesجداولdepartments( (والوظائفjobs (واحدا موظفا مسؤولا قسم لكل أن بحيث

ولكل ما لقسم يتبع موظف وكل عنه مباشر مسئول موظف ولكل فقطمحددة وظيفة موظف

43

Page 44: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

جدول في موجودا كان وإذا موظف رقم عن نبحث أن نريد مثالنا فيالرقم أن نطبع موجودا يكن لم وإذا وعائلته الموظف اسم نطبع الموظفين

التسجيلات ... لمجموعة فهمنا نبدأ هنا ومن ، موجود غير المدخل

كودPrivate Sub example1_Click ((

Dim MyDb As Database Dim rstEmployees As Recordset

Set MyDb = CurrentDbSet rstEmployees = MyDb.OpenRecordset("employees"(

id =" InputBox "الموظف رقم أدخل

rstEmployees.Index = "PrimaryKey"rstEmployees.Seek "=", idIf rstEmployees.NoMatch Then

MsgBox" موجود " غير الرقم هذاElseMsgBox rstEmployees!EmpFirst & " " & rstEmployees!empfamilyEnd If

rstEmployees.Close

End Sub

التالية : المهمة الملاحظات وإليكم

نوع - 1 من المتغير طريق recrodsetبناء عن لها OpenRecordsetهو ويوجدمثالنا في كما البيانات قاعدة من التسجيلات مجموعة لبناء واحد شكلان

من التسجيلات مجموعة لبناء من QueryDefأو TableDefوالثاني أوRecordset

هي : مثالنا في استعملناها والتي المتغير بناء لطريقة العام الشكل

كودset rst = database.openrecordset(source,type,options,lockedits(

44

Page 45: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

حيث

rst النوع من المتغير recrodsetاسم database نوع من المتغير databaseاسم source أمر او استعلام أو جدول اسم ، نصي . sqlمتغير في أما سجلات ترجع

هو النوع حيث يكون tableمثالنا أن فيجب ،source جدول اسم type( من المجموعة نوع يحدد رقمي ثابت ،dbopentable،dbopendynasetوهو

dpopensnapshot ، dbopenforwardonly (مع فقط يستخدم خامس نوع ويوجدODBCDIRECT وهوdbopendynamic

مثالنا في كما نوعها نحدد أن بدون سجلات مجموعة فتحنا إذا أنه ملاحظة معالمحرك النوع Jetفإن من تلقائي بشكل المجموعة كان tableسينشىء إذا ،

النوع فإن مرتبطا جدولا أو استعلاما المصدر كان إذا أما ، جدولا المصدر dynasetسيصبح

options مجموعة خصائص تحدد التي الاختيارية الثوابت من مجموعة هي. المستخدمين تعدد بيئة في التسجيلات

lockedits. لا أو التسجيلات قفل يحدد اختياري ثابت أيضا

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

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

الصورة : في كما الموظفين جدول فهارس على نظرة لنلقي شيء

الفهرس اسم بوضع قمنا الاسم PrimaryKeyولهذا هذا تغيير نستطيع أننا علما. الصورة في كما الفهارس نافذة ومن الجدول تصميم وضع في

45

Page 46: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

أن أيضا الفهرس rstemployees.Indexلاحظوا خاصية تدعى

للكائن أن أذكر أخرى خصائص )recordsetومرة يوجد كائن و ) propertiesولأي.Methodsطرق ) أوامر) يعني

الفهرس خاصية بضبط نقم لم لو يحدث ماذا هنا نفسه يطرح الذي السؤالالأمر استخدام التالي :seekقبل الخطأ سينتج ،

Operation invalid without a current index

حقل من أكثر من يتألف فهرس وفق تسجيله عن البحث يمكن أنه وعلماحقلا 13حتى)

3( الأمر- ) الطريقة خلال من ذلك ويتم البحث لإجراء مرتب الوضع الآنmethod واسمهاseek التالية بالطرية

rstEmployees.Seek "=", id

بعدة idحيث البحث ويمكن عنها سنبحث والآن قراءتها تم التي القيمة هي">=" "<=" ">" "<" "=" ، ، ، ، طرق

وفي - 4 تلقائي بشكل شيئين عمل يتم البحث أمر وهو السابق الأمر بعد: وهما الخفاء

( وجدت- ) إن البحث حسب وجدت التي التسجيلة إلى الانتقال يتمالخاصية- قيمة تعريف يكون nomatchيتم السجل وجد إذا النتيجة على بناء

فيها falseفيها يكون يوجد لم trueوإذا

حاجة 5- فلا رئيسي مفتاح في نبحث ولأننا البساطة غاية في أصبح الأمر الآن. موجود فغير وإلا موجود فالسجل الرقم وجد فإن واحدة مرة إلا للبحث

الأمر - 6 باستخدام التسجيلات مجموعة إغلاق دائما تنسوا لا العمل نهاية فيclose

46

Page 47: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

باستخدام : وذلك ، التنفيذ في التحكم سادسا…IF..THEN, IF…THEN…ELSE, FORالبنيات

NEXT, SELECT…CASE, EXIT, DO…LOOP

الوظائف وبعضكائنات) VBAللتطبيقات )VBباستخدام عن الكتابة رمز كل هو أكسس في

هو . تقريبا شيء كل أكسس في الشاشة على تراه ما كل هو الذي ، أكسسوسجل . . كائن هو ، ماكرو أو ، تقرير أو نموذج أو استعلام أو جدول كل كائن

. شكل كل على السيطرة كل كائن هو والاستعلام الجداول كل في حقل كل . مع معالجته يمكنك الذي كائن هو الشريط وصول حتى كائن هو والتقرير

VBA.

47

Page 48: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

لتحقيق VBAاستخدام البيانات قاعدة كائنات مسألة كبير حد إلى أكسس فيإلى. أكسس يمكنها التي الكائنات عن الكشف أساسيات وصول. VBAالهدف

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

. إليها حاجة

الشكل يظهر ، المثال سبيل . 1على لاحظ كائن لطراز للوصول رسومي تمثيلوجمع . ، كائن كل تمثل وغيرها ، فقط الكائن تمثل مربعات بعض أن

1الشكل A small portion of the Access object model

الشكل إلى . 1الرجوع مجموعة مربع كل إلى يشير ما على نظرة نلقي ، . الوصول يمكن بيانات قاعدة في الأشكال من مجموعة عن عبارة هي نماذج

. بادئة هي كيف لاحظ المفتوحة النماذج من مجموعة أن في شكل أي إلى . نماذج مجموعة في كائن كل أن يوضح وهذا الكلمة أشكال تحت كلمة نموذج ( ( . مرمزة غير أشكال ، الهرمي النموذج كائن في المعقول من يبدو شكل هو

( ( . إلى نظرتم إذا مجموعة؟ يكون كائن لنموذج يمكن كيف والمجموعة ككائن . في تحكم عناصر على يحتوي أنه ترون ، الأشكال من شكل أي عن مجرد

. والشكل ، البرمجة نظر وجهة من الضوابط من مجموعة هو شكل ، الواقع( ( دواليك وهكذا ، والطباعة ، إغلاق ، فتح معالجتها يمكنك الذي الكائن هو

.( ( التي ، التحكم عناصر مجموعة أنها كما ، ذلك ومع كائن واحدة كوحدة ( ( يمكنك التي التحكم يسمى كل الفردية الصغيرة الكائنات على تحتوي

48

Page 49: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

مع ما . . VBAمعالجتها ومجموعة ، كائن كل على يسيطر الكائن لنموذج وفقاومجموعتها تحكم عنصر كل تحكم؟ عنصر على تحتوي لا الأشياء من جمع

. كثيرة أخرى وخصائص اسمه فريد بشكل تحدد التي الخصائص من الخاصةتحكم عنصر تحديد عند النموذج تصميم في الخصائص هذه ترى ان يمكنك

. الشكل في ، المثال سبيل على الملكية ورقة وعرض مربع 2واحد وتحكم ، التصميم عرض طريقة في المختارة الشركة المسمى والسرد التحرير

التحكم. عنصر خصائص عرض هو الشكل في الخاصية ورقة للنموذجEvery form has its own collection of controls

Every control has its own collection of properties

2الشكل Forms hold controls; controls hold properties

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

من صغيرة قطع نرى ما كثيرا كنت ، الوصول في فباع مع العمل أثناءلتناسب . جدا كبير نموذج الكامل الوصول الكائن الكائن النمطية الوحدات

. الكتاب هذا في مطبوعة صفحة على ضيق ضغط وسيكون الشاشة على حتىالتالية الخطوات بإتباع كائن طراز الوصول دائما تصفح يمكنك ، ذلك ومع

البديل- + 1 الصحافة ، أكسيس برنامج إطار في كنت إلى F11إذا للتبديلVBAمحرر

49

Page 50: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

تعليمات F1اضغط- 2 اختر تعليمات ➪أو الأساسية البصرية مايكروسوفتالشاشة الوصول مساعدة الرئيسي المطور لإظهار

- المرجعي النموذج كائن الوصول فوق انقر ، تعليمات الإطار 3فيالشكل في موضح هو ، التعليمات إطار للوصول 3في فرعي تصنيف ويظهر ،

. الكائن خصائص كل في لأسفل الفرعية الفئات من واحدة بنقرة كائن طرازوالمجموعات وأساليب ، .محددة

3الشكل

View an object model from Help

عن الكشف الأقل على واحد كل ومجموعة كائن كل وأساليب خصائص فهمالملكية . بين الفرق وصف يتم بيسك فيجول تطبيقات وطريقة الممتلكات

أسلوب : : الخط أو ، واللون الحجم مثل ، كائن من مميزة حلة هنا والأسلوببناء أو نسخ أو ، إغلاق أو فتح مثل ، كائن على بها القيام يمكن التي الإجراء ( الكائن ) اسم إتباع هو الممتلكات مجموعة أو معين كائن إلى للإشارة الجملة

والاسم بنقطة المجموعة اسم :أو

50

Page 51: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

ObjectCollectionName.property

هو ObjectCollectionNameأين والممتلكات ، كائن طراز من اسم هو حيث . المجموعة اسم أو صالح كائن كتابة عند الكائن لهذا صالحة الخاصية اسم

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

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

الشكل من العلوي الجزء .4في

4الشكل

Find menus of properties and methods.

الشكل من السفلي النصف على الوصول DoCmd. 4نظرة في آخر كائن هو. ( الأساليب ) من العديد توفر التي الآن حتى يذكر لم لدينا التي كائن طراز

فترة تليها اسمه اكتب51

Page 52: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

من قائمة ترى أن ويمكنك ، الحالي الإطار أو البرمجية التعليمات إطار فيكائن قبل من المعتمدة فقط. DoCmdالأساليب يمكنك ، مرئيا القائمة بعد

. الأمر إلى لإضافته أسلوب أو خاصية اسم أي على اضغط

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

. الحصول يمكنك القليل لتقديم القوائم من للمبتدئين المعلومات من مزيدنفسها الأساسية التقنيات باستخدام ومجموعات كائنات مع المساعدة على

بيسك . فيجول تطبيقات تصريحات مع مساعدة على للحصول تستخدمها التي ( اسم ) أو كائن فوق مزدوجا نقرا انقر تحديد يمكنك ، المثال سبيل علىاضغط ) أو تعليمات فوق انقر ثم البرمجية التعليمات في ،). F1مجموعة أو

والحصول المجموعة اسم أو الكائن اسم الكائن مستعرض في البحث يمكنك: . الطريقة وإليك هناك من المساعدة على

بضغط. 1 الكائن المتصفح فتح ، بيسك فيجول تطبيقات محرر عن F2في أو. القوائم شريط من الكائنات مستعرض عرض اختيار طريق

2 . مساعدة. تريد التي الاسم فوق وانقر إلى وانتقل ، الأيسر العمود في

الاسم. 3 فوق انقر ، الأيمن العمود في لاسم مساعدة تريد كنت إذا ، اختياريا . مساعدة تريد التي

.F1اضغط. 4 الكائنات مستعرض في تعليمات الزر فوق انقر أو

فوق كنت إذا ، المثال سبيل اضغط DoCmdعلى ثم الأيمن العمود أو F1فيالمساعدة صفحة في أنظر كنت ، للتعليمات الكائنات مستعرض زر على انقر

الشكل DoCmdللكائن من الأيمن النصف في الحال هو كما كنت. 5، عندمانظرة إلقاء أن المؤكد ومن ، مجموعة أو لكائن التعليمات معلومات أعرض

. الخصائص مع المساعدة تقديم هؤلاء أيضا انظر تحت العناوين على. الكائن بواسطة كشفها التي المحددة والأساليب

52

Page 53: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Click for help with methods.

Methods of the selected object (DoCmd(

5الشكل

Find help in the Object Browser

53

Page 54: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

عن فضلا ، المستعرض كائن وأساليب وخصائص لكائنات الرموز تحديدلمساعدتك الرموز ويستخدم ، لويندوز الحالي القانون في تظهر التي القوائم

في البنود من وغيرها ، وأساليب خصائص ، بصريا الكائنات بين التمييز على. كائن نموذج

. 1-5الجدول في موضح هو الكائنات مستعرض إلى الرجوع رمز كل قوائم5الشكل

Table 5-1 Icons Used in the Object Browser and the Code Window

Icon Name

Property

Default Property Method

Default Method Event

Constant Module

Class (object or collection) User Defined Type

Global Object Library

Project VBA Keyword or Data

Enum

54

Page 55: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

. يمكنك بوضوح مفهوما يكون أن هو النهائي هدفك ، لغة أي في الكتابة عندوعلامات الكلمات لترتيب الأساسية القواعد إتباع خلال من الهدف هذا تحقيق

. .( الإنجليزية ) اللغة في الجملة في الجملة بناء الترقيم

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

. والأساليب والخصائص ، الأشياء إلى الإشارة

فيجول بتطبيقات الكتابة على قادرة لتكون الأهمية بالغ أمر القواعد تلك فهموتعديل . فهم على يساعدك كما الجميع يعمل كيف معرفة يعمل رمز بيسك

. الموجودة البرمجية التعليمات

( مجموعة ) أو كائن إلى للإشارة الجملة وبناء الممتلكات قيمة على الحصولالعام : النموذج هذا يتبع objectCollectionName.propertyالممتلكات

أي objectCollectionNameحيث والملكية ، المجموعة اسم أو صالح كائن أي (.( . الكائن اسم يفصل الذي المحدد هو النقطة الكائن لهذا صالحة ممتلكات

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

. ، وهكذا الوصول في المفتوحة النماذج كافة على يحتوي كائن هو نماذج جمعForms.Count . ترى أن يمكنك البيانات قاعدة في المفتوحة النماذج عدد إرجاع

والضغط الحالي الإطار في التالي السطر كتابة طريق عن لنفسك هذا؟ : Forms.Countأدخل

" في " هو؟ ما يسأل الاستفهام علامة ، الحالي الإطار في دائما الحال هو كماقاعدة " في الفرز أشكال هي ما ، الحالي الإطار في طالبا كنت ، الحالة هذه

" ( " قاعدة في الراهن الوقت في مفتوحة عديدة أشكالا كيف أو هذه؟ البيانات .(" ، الوصول في مفتوحة أشكال هناك يكن لم إذا هذه؟ البيانات

Forms.Count 0بإرجاع( ( .( النموذج ) عرض في النموذج بفتح قمت إذا صفرثم؟ وتنفيذ الوصول ترجع Forms.Countفي فإنها ، أخرى مرة .1البيان

قبل من إرجاعها تم التي القيمة فإن ، أخرى مساويا Forms.Countوبعبارةالوصول -- في فتح يتم التي النماذج من ) 0لعدد هناك ) يكن لم إذا صفر

، مفتوحة ، 1أشكال مفتوحا النموذج أحد كان ، 2إذا مفتوحة شكلين إذا. إيابا وهكذا

55

Page 56: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

العبارة reexecuteإلى نهاية إلى المؤشر تحرك مجرد ، الحالي الإطار في بيانا . ، الحالي الإطار في بسرعة النص لحذف الصحافة أدخل ثم تنفيذ تريد التي

. كل على السيطرة كل حذف على واضغط فوقها الماوس مؤشر اسحبعلى مرئيا التحكم عنصر كان إذا ما يحدد أن على واضحة خاصية له شكل

. ( عندما. ) ، وبالعكس مرئيا والتحكم ، نعم صحيح مرئي يساوي عندما النموذج. مرئية )) غير ومراقبة ، لا باطل مرئي الخاصية

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

قد ، لأمر الدفع معلومات بإدخال للمستخدم تسمح التي النماذج في ، المثالعندما فقط مرئية الائتمان بطاقة معلومات لدخول ضوابط جعل في ترغب

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

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

تحكم مع. myButton.Visibleيدعى myButtonلعنصر الحال هو كما ، ذلك ومعبه الخاصة الحاوية خارج من معين كائن على والحصول ، الوصول التعبيرات

. سبيل على الكائن إلى الكامل المسار يوفر والذي ، معرف استخدام يتطلبالسطر ، المثال

لعنصر myForm! myButton.Visibleأشكال! مرئي الخاصية إلى تحديدا يشيريسمى اسمه myButtonتحكم شكل ! myFormعلى بداية. في جزء نماذج

في فتح يتم التي النماذج جميع على يحتوي الذي ، نماذج جمع إلى يشيرالشكل. يوضح ! 6الوصول كيف يشير myForm! myButton.Visibleأشكال

التحكم لعنصر مرئي الخاصية .myButtonإلى

المساواة بعلامة الخاصية اسم اتبع ، خاصية قيمة لتغيير خاصية قيمة تغيير . تحكم لعنصر مرئي الخاصية يمكن ، المثال سبيل على للخاصية صالحة وقيمة

.(( ( يجعل ) التالية العبارة ، المثال سبيل على لا خطأ أو نعم صحيحا يكوناسمه وضع طريق عن مرئية غير تحكم إلى myButtonعنصر المرئية خاصيته

أشكال )) :! لا لا = !myForm myButton.Visibleخطأ

المرئية خاصيته تعيين ، فباع من أخرى مرة مرئيا نفسه التحكم هذا لجعل : ( أشكال ) هنا موضح هو كما ، نعم صحيح إلى myFormالعودة

myButton.Visible! صحيح =

56

Page 57: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Forms collection (all open forms(

57

Page 58: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

myButton myForm Properties of myButton

6الشكل

Forms! myForm! myButton. Visible from an Access viewpoint.

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

اشارة. في كما نفسه هو الأسلوب الى اشارة في ، الحالات بعض وفي يختلف58

Page 59: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

. والطريقة الفترة مع مجموعة أو الكائن اسم اتباع ببساطة الممتلكات الى . ، المثال سبيل على تطبيق تريد ) DoCmdالتي الوصول ) في الكائن الأوامر لا

تطبيقات القدرات من وغيرها الوصول القوائم على الأوامر تعرض كائن طرازالكائن . بواسطة كشفها أساليب أبسط من واحدة بيسك هو DoCmdفيجول

الصفير. صوت الصوت الوصول يجعل ببساطة فإنه ، تطبيقها عند الأسلوبل. تستخدم قد ، بك الخاصة البرمجية التعليمات في DoCmd.Beepالافتراضي

بخطيء -- -- المستخدم يقوم عندما أو النموذج فتح عند تنبيه صوت الصوت . طريقة تجربة يمكنك الشاشة إلى الانتباه عبر DoCmd.Beepللفت الآن

: . أدخل ثم ، الحالي الإطار في التالي السطر اكتب فقط الحالي الإطارDoCmd.Beep

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

الكائن تقدمها استخدام. OpenFormهو DoCmdالتي أجل من الجملة بناءهذا : DoCmdللكائن OpenFormالأسلوب مثل FormNameيبدو

DoCmd.OpenForm[ ] [ ، عرض ،FilterName[ ]،WhereCondition[ ]،DataMode[ ]،WindowMode[ ]،OpenArgs ]، الأولى ، FormNameالوسيطة

( . . في الحال هو كما اختيارية كلها ، قوسين بين ، المتبقية الحجج المطلوبة هونصيحة معلومات وشاشة تعليمات في تشاهد الجملة بناء المخططات

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

يفتحه : التالي البيان ، الزبائن المسمى "DoCmd.OpenFormنموذج العملاء "

. العبارة ، المثال سبيل على الوسائط متعددة بفواصل مفصولة تكون أن يجبحجة يستخدم المسمى acDesignالتالية النموذج لفتح وثابت عرض

OpenForm : التصميم عرض طريقة " DoCmd.OpenFormفي " ، العملاءacDesign

في كاليفورنيا التي السجلات فقط وعرض ، العملاء نموذج فتح التالي البيانالدولة : يسمى [ =' DoCmd.OpenFormحقل [" " كاليفورنيا " الدولة ، ، ، العملاء

فارغة" وحجج الاختياري عرض مغادرة فارغة وضمان FilterNameالفواصل ، ' = ] [ ، الرابع كوسيطة تمرير يتم لا الدولة WhereConditionأن

التي البيانات كتابة من الانتهاء وعند وأساليب خصائص مع المساعدة طلبكل على الحصول يمكنك ، والأساليب والخصائص ، الأشياء على تنطوي . دائما يمكنك الشاشة على تظهر التي المعتادة تذكير السريعة المساعدة

. بمجرد ، المثال سبيل على كان وإن ، المساعدة من مزيد على الحصولDoCmd ( . أجل من الجملة بناء في كما الفترة نوع لنتذكر ،) DoCmdنوع

تنص التي الأساليب من قائمة الشكل DoCmdتشاهد في كما القائمة. 7،

59

Page 60: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

الأساليب كافة لرؤية التمرير شريط لاستخدام لديك يكون بحيث ، طويلةللكائن .DoCmdالمتاحة

7 الشكلMenu of valid entries for the first word after DoCmd

كامل الجملة بناء تشاهد ، فارغة ومساحة الأسلوب اسم كتابة بعدالشكل في كما ، سريعة نصيحة معلومات شاشة في .8للأسلوب

بين ) ما كل معلومات نصائح سريعة قراءة كيفية حول لوداون( الوسط العناصر من وغيرها ، مائل ، جريئة ، قوسين

8الشكل Get Quick Info syntax help

60

Page 61: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

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

. العديد الآن حتى ضرورية للمساعدة المتكررة والزيارات ، بيسكجميعا لهم قائمة إلى وكلمات وأساليب خصائص ، أيضا الكائنات من

كيفية. عل بالضبط هو تتعلم ان يمكنك التي المهارات أفضلحاجة في كنت عندما ، إليها تحتاج التي المساعدة على الحصول

إليها.الكلمات مع تعمل التي المساعدة الأساليب جميع أن ، الحظ لحسن

. ، المثال سبيل على والأساليب والخصائص ، الكائنات مع تعمل كماالأسلوب في يمكنك DoCmdللكائن OpenFormللمساعدة ،

البرمجية : : التعليمات إطار في يلي بما القيامDoCmd.OpenForm انقر ، البرمجية التعليمات إطار في نوع

فوق مزدوجا اضغط OpenFormنقرا ثم ومن ، F1لتحديده : . الكائنات مستعرض في مساعدة على البحث DoCmdللحصول

فوق انقر ، الأيسر العمود ، OpenFormفي الأيمن العمود فيهو المثال في كما ، الكائنات مستعرض في تعليمات الزر فوق وانقر

الشكل في من 9موضح مزيد على الحصول يمكنك حيث ، الأسلوب حول .OpenFormالمعلومات

Selected keyword

61

Page 62: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Help for selected keyword

8الشكل Help for the OpenForm method

الدالة Select Case استخدام

ولكنها تختلف عنها بالتعدد أي أنها تكون فيIf .. Thenهي أشبه ما تكون بالدالة الشروط المتعددة .

:طريقة بناؤها كما يلي

code:

Select Case الكائن62

Page 63: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Case حالة_الكائنالحدث_المراد_عمله_في_هذه_الحالة_للكائنEnd Select

:مثال لتقريب عمل هذه الدالةأقرب مثال وأوضحه هو طريقة استخراج التقدير العام للطلاب في مؤهلاتهم بمعنى ..

فيكون تقديره مثلا جيد60طالب أخذ درجة فيكون تقديره ممتاز وهكذا ..90طالب آخر أخذ درجة

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

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

لدينا نموذج وفيه مربعي نص الأول باسم (المجموع) والثاني باسم (التقدير) نضع في حدث (عند الخروج) لمربع النص المسمى (المجموع) هذا الحدث لكي يخرج علينا

code كالتالي Select Caseالتقدير باستخدام الدالة

Select Case المجموعCase 0 To 48"التقدير = "ضعيفCase 49 To 60"التقدير = "مقبولCase 61 To 74"التقدير = "جيدCase 75 To 88 "التقدير = "جيد جداCase 89 To 100"التقدير = "ممتازEnd Select

في الحقل (المجموع) ليخرج علينا تقديره في الحقل100 إلى 1نكتب أي رقم من (التقدير(

) ) بمعنى (إلى) ولا يلزم استخدامها مع الدالة دائما ولكنهاToطبعا استخدمنا هنا ) هنا فهيCaseتستخدم في حالة مثل هذه الحالة التي نحن بصدد الحديث عنها .. أما (

تشير إلى المجموع وهي تستخدم دائما مع الدالة ولا يمكن الاستغناء عنها.وتفسير الدالة السابقة كما يلي :

يكون التقدير ضعيف 48المجموع صفر إلى المجموع يكون التقدير مقبول 60 إلى المجموع 49المجموع يكون التقدير جيد 74 إلى المجموع 61المجموع يكون التقدير جيد جدا 88 إلى المجموع 75المجموع يكون التقدير ممتاز 100 إلى المجموع 89المجموع

المثال الأول :المطلوب في هذا الاختبار هو تطبيق ما تم شرحه أعلاه بخصوص تقدير درجات الطلاب

63

Page 64: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

الإجابة Option Compare DatabasePrivate Sub total_BeforeUpdate(Cancel As Integer(End SubPrivate Sub total_Exit(Cancel As Integer(Select Case totalCase 0 To 48Tagdeer.Value = "ضعيف"Case 49 To 60Tagdeer.Value = "مقبول"Case 61 To 74Tagdeer.Value = "جيد"Case 75 To 88Tagdeer.Value = "جيد جدا"Case 89 To 100Tagdeer.Value = "ممتاز"End SelectEnd Sub

الثاني: من أجل الاستفادة منهما معا وهذه Select Caseمع الدالة IFسوف ندمج الدالة

الحالة دائما تتكرر في البرامج

الأدوات :-) يحتوي على كلمتين هما )حروف)و(أرقام(Name-مربع تحرير وسرد باسم (1

) نضع الكود في حدث عند الخروج لهذا المربعTXT1-مربع نص غير منظم باسم (2

)تخرج فيه النتيجة المطلوبةTXT2-مربع نص غير منظم باسم (3

المطلوب :-

يحتوي على كلمة )أرقام( فنريد ما يلي :- Name إذا كان -

TXT2 تخرج كلمة (الأول) في TXT1) في 1- إذا كتبنا الرقم (

64

Page 65: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

TXT2 تخرج كلمة (الثاني) في TXT1) في 2- إذا كتبنا الرقم (

TXT2 تخرج كلمة (الثالث) في TXT1) في 3- إذا كتبنا الرقم (

TXT2 تخرج كلمة (الرابع) في TXT1) في 4- إذا كتبنا الرقم ( يحتوي على كلمة )حروف( فنريد ما يلي :- Name -إذا كان

TXT2 تخرج كلمة (واحد) في TXT1) في 1- إذا كتبنا الرقم (

TXT2 تخرج كلمة (اثنان) في TXT1) في 2- إذا كتبنا الرقم (

TXT2 تخرج كلمة (ثلاثة) في TXT1) في 3- إذا كتبنا الرقم (

TXT2 تخرج كلمة (أربعة) في TXT1) في 4- إذا كتبنا الرقم (

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

Select Case مع الدالة IFملاحظة هامة جدا :يطبق في هذا المثال الدالة معا

الإجابة :Private Sub TXT1_Exit(Cancel As Integer(

"Then أرقام If Me.Name1"=

Select Case Me.TXT1

Case 1 =Me.TXT2"الأول "

Case 2

= Me.TXT2"الثاني" Case 3

=Me.TXT2"الثالث" Case 4

=Me.TXT2"الرابع"

End Select End If

65

Page 66: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

Then "حروف" If Me.Name1= Select Case Me.TXT1 Case 1

=Me.TXT2"واحد" Case 2

=Me.TXT2"اثنان" Case 3

=Me.TXT2"ثلاثة" Case 4

=Me.TXT2"أربعة" End Select End If

End Sub

التطبيق الأول :سوف نستخدم في هذا التطبيق ( مجموعة خيار ) وذلك لتنفيذ ما يلي :-

66

Page 67: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

يحتوي (مجموعة خيار)على أربعة أسئلة هي كالتالي :- -كم أركان الإسلام ؟1 - كم عدد الصلوات المفروضة في اليوم ؟2 - من هو خاتم النبيـين؟3 - من هو خليل ا لرحمن ؟4

=======(للتوضيح فقط إجابات الأسئلة هي )

- خمسة أركان1 - خمس صلوات في اليوم والليلة2 - هو محمد صلى الله عليه وسلم3 - هو إبراهيم عليه السلام4

======== المطلوب هو عند اختيار أحد الأسئلة يخرج الجواب في مربع نص أو تسمية - حسب رغبتك -

فقط هذا كل شيئselect caseطبعا يتم عمل ذلك عن طريقة الدالة

أما مسميات الأدوات فلك الحرية في اختيار الاسم الذي تريد(( يصبح البرنامج في النهاية هكذا ولكل شخص ذوقه في التصميم ))

67

Page 68: نبدأ بالدرس الأول - psau.edu.sa · Web viewبعض وسائل تدعم واحد أو أكثر ، بصفتها نائبة للمعلومات التي تريد تمريرها

الإجابة :

Option Compare Database() Private Sub dd_AfterUpdate

Select Case ddCase 1

=11 " خمسة أركان"Case 2

=11 " خمس صلوات في اليوم والليلة"Case 3

=11 " هو محمد صلى الله عليه وسلم"Case 4

=11 " هو إبراهيم عليه السلام"End SelectEnd Sub

68