TOP

VBA-الدرس 1. ما هو VBA. مفاهيم أساسية.

في هذا القسم ، سننظر في ماهية VBA ، نظرًا لأن وحدات الماكرو مكتوبة عليها.

ما هو VBA؟

VBA هي لغة برمجة مضمنة (تعني Visual Basic for Applications) تم تطويرها بواسطة Microsoft. هذه اللغة ليست مستقلة ، ولكنها مخصصة فقط لأتمتة العمليات في حزمة MS Office. يستخدم VBA على نطاق واسع في Excel وكذلك في Access و Word والبرامج الأخرى في الحزمة.

VBA هي لغة برمجة بسيطة يمكن لأي شخص تعلمها. بمجرد أن تتعلمها ، ستتمكن من إعطاء أوامر Excel ، وما يجب فعله بالأعمدة والصفوف وقيم الخلايا ونقل / إضافة / فرز أوراق العمل وعرض الرسائل المبرمجة مسبقًا وكتابة الصيغ والوظائف الخاصة بك والمزيد. جوهر اللغة هو العمل على الأشياء.

للعمل مع كود VBA ، نحتاج إلى محرر (Visual Basic Editor) ، والذي تم تثبيته بالفعل في Excel افتراضيًا. يمكنك فتحه بالضغط على مجموعة المفاتيح " Alt + F11".

كائنات (Objects)

دعونا نفهم ماهية الكائن في VBA.

VBA الكائن هو عنصر ، جسيم هيكلي Excel ، وهو: كتاب ، ورقة ، نطاق ، خلية.

VBA كائنات لها تسلسل هرمي ، أي أنها تابعة لبعضها البعض. من الناحية التخطيطية ، يمكن تمثيل الهيكل الهرمي في Excel على النحو التالي:

أهم عنصر هو Application ، والذي يتوافق مع برنامج Excel نفسه. يأتي بعد ذلك Workbook (كتاب) ، Worksheet (ورقة) ، Range (نطاق ، أو خلية فردية).

على سبيل المثال ، للإشارة إلى الخلية "A1" في ورقة العمل ، سنحتاج إلى كتابة المسار التالي ، مع مراعاة التسلسل الهرمي:

Application.Workbooks ("Archive") .Worksheets ("Sheet1") .Range ("A1")

وهكذا ، تعلمنا أن نشير إلى أصغر كائن في خلية Excel.

المجموعات (Collections)

في المقابل ، تنتمي كائنات VBA إلى "المجموعات".

VBA المجموعة هي مجموعة (مصفوفة) من كائنات من نفس الفئة (مجموعة من الكتب والأوراق وما إلى ذلك). نعم ، جميع كائنات Worksheet هي عناصر من مجموعة Worksheets. في المقابل ، فإن المجموعة هي أيضًا كائن.

يمكن أن تنتمي نفس الكائنات إلى عدة مجموعات. على سبيل المثال ، تنتمي كائنات Worksheet أيضًا إلى المجموعة Sheets. تحتوي مجموعة Sheets على كافة الأوراق الموجودة في المصنف - كلا المخططين ، اللذين يعتبران أيضًا أوراقًا (Chart) ، وأوراق البيانات (Worksheet).

المجموعات التالية موجودة في VBA Excel:

  • Workbooks (يحتوي على Workbook كائنات)
  • Worksheets (Worksheet كائنات)
  • Sheets (الكائنات Worksheet و Chart)
  • Ranges (Ranges كائنات)
  • ChartObjects (كائنات ChartObject)
  • PivotTables (كائنات PivotTable)
  • واشياء أخرى عديدة...
  • الخصائص (Propertes)

    كل كائن في VBA له خصائص. على سبيل المثال ، يحتوي كائن Range على خاصية Value أو Formula.

    Worksheets ("Sheet1") .Range ("A1") .Value أو Worksheets ("Sheet1") .Range ("A1") .Formula

    في هذا المثال ، تعرض الخاصية القيمة التي تم إدخالها في الخلية أو الصيغة التي تم إدخالها.

    أيضًا ، من خلال الخاصية Formula ، لا يمكنك الحصول على الصيغة فحسب ، بل يمكنك أيضًا كتابتها:

    MsgBox Range ("A1") .Formula - سوف نتلقى رسالة بالصيغة الموجودة في الخلية "A1" ؛

    Range ("B12") .Formula = "= 2 + 6 * 100" - أدخل الصيغة "= 2 + 6 * 100" في الخلية "B12".

    الأساليب (Methods)

    الآن دعونا نلقي نظرة على كيفية التعامل مع محتويات نطاق أو خلية. لهذا ، هناك ما يسمى بالطرق (أوامر "ماذا تفعل") في VBA. عند كتابة التعليمات البرمجية ، يتم فصل العمليات عن الكائن بنقطة ، على سبيل المثال:

    Range ("A1") .Select أو Cells (1،1) .Select

    تحدد هذه الطريقة لتحديد الخلية (Select) "A1".

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

    Selection.ClearContents

    هنا "يأخذ" البرنامج ما اخترناه (Selection) ويمسح محتوياته (ClearContents).