VBA Excel: نماذج من البرامج. وحدات الماكرو في Excel

15.08.2019

كتاب: استخدام وحدات الماكرو في Excel.

الصفحات: 507

شكل: DJVU
مقاس: 8.02 ميجا بايت

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

كتاب: دورة برمجة Excel مكثفة خلال عطلة نهاية الأسبوع

الناشر: الديالكتيك
الصفحات: 421
شكل: DJVU
مقاس: 12.6 ميجابايت
جودة: طبيعي
لغة: الروسية
النوع: برمجة
سنة النشر: 2004
ردمك: 5-8459-0687-3

لا تقتصر إمكانيات Microsoft Excel على العمل مع جداول البيانات. تكمن وراء أدوات معالجة جداول البيانات لغة برمجة قوية - VBA (Visual Basic for Applications). ومع ذلك، فإن أي مستخدم تقريبًا لديه الفرصة لتعلم كيفية كتابة البرامج في VBA لحل المشكلات الأكثر تنوعًا في Excel - بدءًا من التنفيذ الميكانيكي للحسابات ووصولاً إلى إنشاء نظام لإدخال البيانات باستخدام نماذج الشاشة الخاصة به مع إمكانية مراجعة صحتها من القيم المدخلة

كتاب: البرمجة في VBA 2002

جودة: طبيعي
لغة: الروسية
النوع: برمجة

يحتوي الكتاب على دورة في البرمجة بلغة Visual Basic for Applications (VBA)، وهي اللغة الأساسية في تطبيقات Microsoft Office (Word وExcel وAccess وPowerPoint وFrontPage وVisio وغيرها). الكتاب مخصص للمبتدئين في البرمجة في بيئة Windows باستخدام كائنات Word وExcel وPowerPoint.تم تخصيص جزء من الكتاب لتطوير تطبيقات Office التي تستخدم قواعد البيانات المخزنة في ملفات منفصلة وعلى خوادم بعيدة.يحتوي الكتاب على مواد كافية لتعلم أساسيات لغة Visual Basic وإنشاء وحدات ماكرو بسيطة تساعد على أتمتة العمل الروتيني والمتكرر مع المستندات وجداول البيانات والمخططات والعروض التقديمية وما إلى ذلك، بالإضافة إلى تطوير تطبيقات معالجة قواعد البيانات المعقدة باستخدام مربعات الحوار التي توفر للمستخدم أحدث أدوات الواجهة.معظم الأمثلة في الكتاب مخصصة للقضايا الحالية للنشاط التجاري، لذلك سيكون الكتاب مفيدًا جدًا للمديرين على مختلف المستويات، والذين من الواضح أن كلاً من Microsoft Office ولغة برمجة VBA المضمنة مخصصان لهم.
يمكن أن تكون الملاحق الموجودة في نهاية الكتاب بمثابة مرجع مفيد للعمل مع كل من VBA وVB العادي.

كتاب: البرمجة الاحترافية في VBA في Excel 2003
جون والكينباخ
الناشر: ويليامز
شكل: بي دي إف
مقاس: 11 ميجا بايت
جودة: ممتاز
لغة: الروسية
سنة النشر: 2005
ردمك: 5-8459-0771-3
الكتاب يأتي مع قرص

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

نسخة PDF تم تحريرها ويرجى تقديمها من قبل المشارك.

كتاب: :
جون والكينباخ
الناشر: وايلي
شكل: بي دي إف
الصفحات: 1308
مقاس: 11.9 ميجابايت
جودة: ممتاز
لغة: إنجليزي
سنة النشر: 2010
يركز هذا الكتاب على Visual Basic for Applications (VBA)، وهي لغة البرمجة المضمنة في Excel (والتطبيقات الأخرى التي تشكل Microsoft Office). وبشكل أكثر تحديدًا، سيوضح لك كيفية كتابة البرامج التي تعمل على أتمتة المهام المختلفة في Excel. يغطي هذا الكتاب كل شيء بدءًا من تسجيل وحدات الماكرو البسيطة وحتى إنشاء تطبيقات وأدوات مساعدة متطورة موجهة للمستخدم. لا يغطي هذا الكتاب أدوات Microsoft Visual Studio لـ Office (VSTO). VSTO هي تقنية جديدة نسبيًا تستخدم Visual Basic .NET وMicrosoft Visual C#. يمكن أيضًا استخدام VSTO للتحكم في Excel وتطبيقات Microsoft Office الأخرى.
هذا ليس كتابًا للمبتدئين في استخدام برنامج Excel. إذا لم تكن لديك خبرة في استخدام Excel، فقد يكون الخيار الأفضل هو Excel 2010 Bible، الذي يوفر تغطية شاملة لجميع ميزات Excel. هذا الكتاب مخصص للمستخدمين من جميع المستويات.

كتاب: : البرمجة الاحترافية في VBA في Excel 2010
جون والكينباخ
الناشر: الديالكتيك
شكل: بي دي إف
الصفحات:920
مقاس: 22.1 ميجابايت
جودة: ممتاز
لغة: الروسية
سنة النشر: 2010 موضوع هذا الكتاب هو لغة برمجة Visual Basic for Applications (VBA)، المضمنة في برنامج Excel بالإضافة إلى التطبيقات الأخرى المضمنة في Microsoft Office. فهو يصف بالتفصيل إنشاء البرامج التي تعمل على أتمتة تنفيذ المهام المختلفة في Excel، ويغطي أيضًا مجموعة واسعة من المواضيع الأخرى - من كتابة وحدات ماكرو بسيطة إلى إنشاء تطبيقات وأدوات مساعدة معقدة مصممة لتفاعل المستخدم. لا يصف هذا الكتاب حزمة برامج Microsoft Visual Studio Tools for Office (VSTO). إنه تجسيد لتقنية جديدة نسبيًا تستخدم Visual Basic .NET وMicrosoft Visual C#. يمكن أيضًا استخدام تقنية VSTO للتحكم في سلوك برنامج Excel وتطبيقات Microsoft Office الأخرى.

هذا الكتاب غير مخصص لمستخدمي Excel المبتدئين. إذا لم تكن لديك خبرة في هذا التطبيق، فاقرأ أولاً كتاب Excel 2010. الكتاب المقدس للمستخدم، والذي يشرح بالتفصيل جميع ميزات Excel (وهو موجه للمستخدمين من جميع المستويات).


كتاب:البرنامج التعليمي لـ VBA
جارناييف أ.
الناشر: bhv
الصفحات: 512
شكل: html مع الصور في rar
ردمك: 5-8206-0067-3
مقاس: 2.22 ميجابايت

ممتاز

لغة: إنجليزي
سنة النشر: 2009

يعد Microsoft Excel أكثر من مجرد جدول بيانات. مع تقديم محرر Visual Basic في Excel 97، متبوعًا بالتحسن الكبير في الاستقرار في Excel 2000، أصبح Excel نظامًا أساسيًا للتطوير محترمًا في حد ذاته. توجد الآن تطبيقات Excel جنبًا إلى جنب مع تلك التي تعتمد على C++، وJava، ومنصة التطوير .NET، كجزء من المجموعة الأساسية لتطبيقات الشركات ذات المهام الحرجة.
لسوء الحظ، لا يزال يُنظر إلى Excel في كثير من الأحيان على أنه منصة للهواة، حيث يقوم الأشخاص بتطوير تطبيقات Excel فقط في أوقات فراغهم لأتمتة المهام الصغيرة. يبدو أن نظرة سريعة على العديد من كتب Excel VBA تؤكد هذا الرأي. تركز هذه الكتب على أساسيات أتمتة مهام Excel باستخدام VBA. يعد هذا الكتاب الأول من نوعه في تقديم شرح تفصيلي لكيفية استخدام برنامج Excel كمنصة لتطوير تطبيقات ذات جودة احترافية.
في حين يبدو أن معظم منصات التطوير الرئيسية الأخرى تحتوي على نص قياسي فعلي يشرح أفضل الممارسات المتفق عليها بشكل عام لتصميم التطبيقات وتصميمها وتطويرها باستخدام هذا النظام الأساسي، إلا أن Excel لم يفعل ذلك حتى الآن. ويحاول هذا الكتاب سد هذه الفجوة. المؤلفون هم مطورو Excel المحترفون الذين يقومون بإنشاء تطبيقات مستندة إلى Excel لعملاء تتراوح من الأفراد إلى أكبر الشركات متعددة الجنسيات. يشرح هذا الكتاب الأساليب التي نستخدمها عند تصميم التطبيقات التي نكتبها لعملائنا وتطويرها وتوزيعها ودعمها.
تم توفير هذا الكتاب من قبل المستخدم

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

ما هو فبا

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

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

  • ارجع إلى سطر "وحدات الماكرو"؛
  • حدد "ماكرو 1" من القائمة؛
  • انقر فوق "تشغيل" (يتم تشغيل نفس الإجراء عن طريق تشغيل مجموعة المفاتيح "Ctrl + hh").

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

من المنطقي أن نرى كيف يبدو الرمز. للقيام بذلك، ارجع إلى سطر "وحدات الماكرو" وانقر على "تغيير" أو "تسجيل الدخول". ونتيجة لذلك، ينتهي بهم الأمر في بيئة VBA. في الواقع، رمز الماكرو نفسه يقع بين السطور Sub Macro1() وEnd Sub.

إذا تم إجراء النسخ، على سبيل المثال، من الخلية A1 إلى الخلية C1، فسيبدو أحد أسطر التعليمات البرمجية مثل Range("C1").Select. عند ترجمته، يبدو مثل "Range("C1").Select"، بمعنى آخر، ينتقل إلى الخلية C1 في VBA Excel.

يتم إكمال الجزء النشط من التعليمات البرمجية بواسطة الأمر ActiveSheet.Paste. ويعني ذلك كتابة محتويات الخلية المحددة (في هذه الحالة A1) في الخلية المحددة C1.

مثال 2

تساعدك حلقات VBA على إنشاء وحدات ماكرو متنوعة في Excel.

تساعدك حلقات VBA على إنشاء وحدات ماكرو متنوعة. لنفترض أن هناك دالة y=x + x2 + 3x3 - cos(x). تحتاج إلى إنشاء ماكرو للحصول على الرسم البياني الخاص به. لا يمكن القيام بذلك إلا باستخدام حلقات VBA.

القيم الأولية والنهائية لوسيطة الدالة هي x1=0 وx2=10. بالإضافة إلى ذلك، يجب عليك إدخال ثابت - قيمة خطوة تغيير الوسيطة والقيمة الأولية للعداد.

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

افعل بينما x1< x2 (цикл будeт выполняться пока вeрно выражeниe x1 < x2)

ص=x1 + x1^2 + 3*x1^3 - كوس(x1)

الخلايا (i, 1).القيمة = x1 (تتم كتابة قيمة x1 في الخلية ذات الإحداثيات (i,1))

الخلايا (i، 2).القيمة = y (تتم كتابة القيمة y في الخلية ذات الإحداثيات (i،2))

i = i + 1 (العداد ساري المفعول)؛

x1 = x1 + shag (تتغير الوسيطة حسب قيمة الخطوة)؛

ونتيجة تشغيل هذا الماكرو في برنامج Excel نحصل على عمودين، يحتوي الأول منهما على قيم x، والثاني على y.

ثم يتم إنشاء رسم بياني منها بطريقة قياسية لبرنامج Excel.

مثال 3

لتنفيذ الحلقات في VBA Excel 2010، كما هو الحال في الإصدارات الأخرى، جنبًا إلى جنب مع إنشاء Do while المعطى بالفعل، يتم استخدام For.

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

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

لأني = 1 إلى 10 التالي

تتم ترجمة الأمر إلى اللغة "البشرية" على أنه "كرر من 1 إلى 10 في خطوات واحدة".

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

لأني = 1 إلى 10 الخطوة 1 التالية.

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

يجب حفظ النتائج التي تم الحصول عليها في الخلايا المرقمة (ط،1). بعد ذلك، في كل مرة تبدأ فيها الحلقة بزيادة حجم الخطوة، سيزيد رقم السطر تلقائيًا. وبالتالي، سيتم تحسين الكود.

بشكل عام سيكون الكود كالتالي:

For i = 1 إلى 10 الخطوة 1 (يمكنك ببساطة كتابة For i = 1 إلى 10)

الخلايا (i، 1).القيمة = i ^ 2 (أي قيمة المربع i مكتوبة في الخلية (i،1))

التالي (بمعنى أنه يلعب دور العداد ويعني بداية أخرى للدورة)

إذا تم كل شيء بشكل صحيح، بما في ذلك تسجيل وتشغيل الماكرو (انظر التعليمات أعلاه)، فعند الاتصال به في كل مرة، ستحصل على عمود بالحجم المحدد (في هذه الحالة، يتكون من 10 خلايا).

مثال 4

في الحياة اليومية، غالبًا ما تكون هناك حاجة لاتخاذ قرار أو آخر اعتمادًا على بعض الظروف. لا يمكنك الاستغناء عنها في VBA Excel. أمثلة على البرامج التي يتم فيها اختيار المسار الإضافي لتنفيذ الخوارزمية وليس تحديده مسبقًا في البداية، غالبًا ما تستخدم تركيبة If ...Then (للحالات المعقدة) If ...Then ...END If.

دعونا نفكر في حالة محددة. لنفترض أنك بحاجة إلى إنشاء ماكرو لبرنامج Excel بحيث يتم كتابة ما يلي في الخلية بالإحداثيات (1،1):

1، إذا كانت الحجة إيجابية؛

0 إذا كانت الوسيطة صفر؛

1 إذا كانت الحجة سلبية.

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

x= Cells(1, 1).Value (يعين هذا الأمر x قيمة محتويات الخلية ذات الإحداثيات (1, 1))

إذا كان x>0 ثم الخلايا (1، 1).القيمة = 1

إذا كان س = 0 ثم الخلايا (1، 1).القيمة = 0

إذا س<0 Then Cells(1, 1).Value = -1

كل ما تبقى هو تشغيل الماكرو والحصول على القيمة المطلوبة للوسيطة في Excel.

وظائف فبا

كما لاحظت بالفعل، فإن البرمجة باستخدام أشهر معالجات Microsoft Table ليست بهذه الصعوبة. خاصة إذا تعلمت كيفية استخدام وظائف VBA. في المجموع، تحتوي لغة البرمجة هذه، التي تم إنشاؤها خصيصًا لكتابة التطبيقات في Excel وWord، على حوالي 160 وظيفة. ويمكن تقسيمها إلى عدة مجموعات كبيرة. هذا:

  • الوظائف الرياضية. ومن خلال تطبيقها على الوسيطة، يحصلون على قيمة جيب التمام، واللوغاريتم الطبيعي، والجزء الصحيح، وما إلى ذلك.
  • الوظائف المالية. بفضل توفرها واستخدام البرمجة في برنامج Excel، يمكنك الحصول على أدوات فعالة للمحاسبة والحسابات المالية.
  • وظائف معالجة المصفوفة. وتشمل هذه Array وIsArray؛ لبوند. Ubound.
  • وظائف Excel VBA للسلسلة. هذه مجموعة كبيرة إلى حد ما. وهي تتضمن، على سبيل المثال، وظائف Space لإنشاء سلسلة بعدد مسافات مساوية للوسيطة الصحيحة، أو Asc لتحويل الأحرف إلى كود ANSI. يتم استخدامها جميعًا على نطاق واسع وتسمح لك بالعمل مع الصفوف في Excel، وإنشاء تطبيقات تسهل العمل مع هذه الجداول بشكل كبير.
  • وظائف تحويل نوع البيانات. على سبيل المثال، تقوم CVar بإرجاع قيمة وسيطة Expression عن طريق تحويلها إلى نوع البيانات Variant.
  • وظائف للعمل مع التواريخ. إنها تعمل على توسيع القدرات القياسية لبرنامج Excel بشكل كبير. وبالتالي، تقوم الدالة WeekdayName بإرجاع الاسم (الكامل أو الجزئي) ليوم الأسبوع حسب رقمه. والأكثر فائدة هو الموقت. فهو يعطي عدد الثواني التي مرت من منتصف الليل إلى نقطة محددة في اليوم.
  • وظائف لتحويل وسيطة رقمية إلى أنظمة أرقام مختلفة. على سبيل المثال، يعرض Oct الأرقام بتمثيل ثماني.
  • وظائف التنسيق. وأهمها التنسيق. تقوم بإرجاع قيمة متغير بتعبير منسق وفقًا للتعليمات المحددة في إعلان التنسيق.
  • إلخ.

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

مثال 5

دعنا نحاول الانتقال إلى حل المشكلات الأكثر تعقيدًا. على سبيل المثال:

يتم تقديم وثيقة ورقية توضح المستوى الفعلي لتكاليف المؤسسة. مطلوب:

  • تطوير جزء القالب الخاص به باستخدام جدول بيانات Excel؛
  • قم بإنشاء برنامج VBA الذي سيطلب البيانات الأولية لملئها وإجراء الحسابات اللازمة وملء خلايا القالب المقابلة بها.

دعونا نفكر في أحد خيارات الحل.

إنشاء قالب

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

المتغيرات

لكتابة برنامج لملء قالب تلقائيًا، تحتاج إلى تحديد الرموز. سيتم استخدامها للمتغيرات:

  • NN - رقم صف الجدول الحالي؛
  • TP و TF - حجم التداول التجاري المخطط والفعلي؛
  • SF وSP - المبلغ الفعلي والمخطط للتكاليف؛
  • IP وIF - المستوى المخطط والفعلي للتكاليف.

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

حل مشكلة باستخدام برمجة VBA

باستخدام الرموز المقدمة، نحصل على صيغ الانحرافات. إذا كنت بحاجة إلى الحساب بالنسبة المئوية، فلدينا (F - P) / P * 100، وفي المجموع - (F - P).

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

بالنسبة للإجماليات الفعلية والمتوقعة، يتم الحصول عليها باستخدام الصيغتين ItogP=ItogP + P وItogF=ItogF+ F.

بالنسبة للانحرافات استخدم = (ItogF - ItogP) / ItogP * 100 إذا تم الحساب كنسبة مئوية، وفي حالة القيمة الإجمالية - (ItogF - ItogP).

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

قبل تشغيل البرنامج الذي تم إنشاؤه، تحتاج إلى حفظ المصنف، على سبيل المثال، تحت اسم "Report1.xls".

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

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

الهدف من العمل -دراسة العوامل الأساسية وتنفيذ بنيات البرمجة الأساسية في لغة VBA.

4.1 المراحل الرئيسية للعمل مع برامج vba في Excel

لإعداد وتشغيل برنامج في VBA، عليك القيام بما يلي:

    في Excel، حدد أمرًا من القائمة الأدوات - ماكرو - محررمرئيأساسي;

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

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

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

لبدء البرنامج للتنفيذ، يجب عليك تحديد الأمر من القائمة تشغيل – تشغيل Sub/UserForm.

4.2 أبسط مثال لبرنامج في VBA

مثال 4.1– برنامج يقوم برفع رقم محدد أإلى الدرجة المحددة ب.

خافت أ كمفرد، ب كمفرد

أ = InputBox("أدخل القاعدة:")

ب = InputBox("أدخل الأس:")

x = a^b 'الأس

MsgBox ("النتيجة هي" & x)

ها هي الكلمة الفرعيةيشير إلى بداية الإجراء؛ اسمها في هذه الحالة هو التمهيدي4_1 . يتكون برنامج VBA دائمًا من إجراء واحد أو أكثر (في هذه الحالة، إجراء واحد).

يشير الحرف ' (علامة الاقتباس المفردة) إلى بداية التعليق. يمكن أن يكون نص التعليق أي شيء.

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

صندوق الإدخال- وظيفة لإدخال قيمة المتغير. خط أ = صندوق الإدخال("أدخل القاعدة:”) يعني أنه تم إدخال قيمة المتغير أ; يتم عرض رسالة على الشاشة "أدخل القاعدة:". خط س = أ^ ب- عامل الإسناد: يتم حساب قيمة الجانب الأيمن (في هذه الحالة المتغير أمرفوع إلى السلطة ب)، ويتم تعيين النتيجة للمتغير المحدد على الجانب الأيسر (في هذه الحالة، المتغير س). خط MsgBox("النتيجه هي " &س) يعني أنه يتم عرض رسالة على الشاشة "النتيجة تساوي"وقيمة المتغير س.

ملاحظة - التوقيع & فى مهمة MsgBoxمصممة لربط العديد من عناصر البيانات التي يجب عرضها، في هذا المثال - السلاسل "النتيجة متساوية"ومتغير س. علامة مماثلة & يمكن استخدامها في الوظيفة صندوق الإدخال(سيتم تقديم أمثلة على هذا الاستخدام أدناه). أمام العلامة & ويجب أن تكون هناك مسافات بعده.

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

"المثال الأول لبرنامج VBA."

خافت أ كمفرد، ب كمفرد

أ = InputBox("أدخل الأساس:") : ب = InputBox("أدخل الأس:")

x = a^b: MsgBox("النتيجة هي "& x)" الأس وإخراج النتيجة

يستخدم هذا المثال إجراء يسمى روتين فرعي. يبدأ هذا الإجراء بالكلمة الفرعية. يحتوي برنامج VBA دائمًا على إجراء فرعي واحد على الأقل. بالإضافة إلى ذلك، تحتوي لغة VBA على نوع آخر من الإجراءات - الوظائف. يبدأ إجراء الوظيفة بالكلمة وظيفة. ستتم مناقشة استخدام مثل هذه الإجراءات في القسم الفرعي 4.9.

MZTools - أداة مفيدة جدًا لأولئك الذين يبرمجون باستخدام VBA. يوفر الوقت حقًا عند كتابة الرموز. ومن المهم أن الأداة المساعدة بحرية مطلقة. وهنا بعض من ميزاته:

  • إدراج معالجات الأخطاء تلقائيًا في الوحدات النمطية
  • إدراج التعليقات في رأس الإجراء، مع الإدراج التلقائي للوقت وأسماء الوحدات والإجراءات، والقدرة على الإشارة إلى مؤلف الإجراء
  • الترقيم التلقائي لأسطر التعليمات البرمجية
  • إزالة الترقيم من أسطر التعليمات البرمجية
  • إنشاء قوالب التعليمات البرمجية المستخدمة بشكل متكرر
  • حافظة خاصة لـ 9 عمليات مع إمكانية إدخال الأكواد وإدراج أي من الأكواد التسعة المنسوخة لاحقًا
  • والعديد من الأشياء المفيدة

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

(37.3 كيلو بايت، 3,708 تنزيل)


الموقع الرسمي: غير موجود

أدوات VBE - كم منكم كتب تعليمات برمجية لنموذج، ثم تذكر أن بعض العناصر لم تتم تسميتها كما أردتم أو ببساطة أردتم إعادة تسميتها بسبب تغيير في التعليمات البرمجية؟ وبالطبع، واجهنا مشكلة أنه عند إعادة تسمية عنصر، كان علينا الانتقال إلى الكود واستبدال جميع المراجع إلى هذا العنصر هناك باسم جديد. لذلك، بمساعدة هذا البرنامج، يمكنك إعادة تسمية اسم أي عنصر نموذج (TextBox، Label، وما إلى ذلك) وعناصر تحكم ActiveX على ورقة Excel، وسيقوم البرنامج نفسه باستبدال جميع الروابط الموجودة في الكود من الاسم القديم إلى الجديد. بشكل مريح للغاية.

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

الموضوع 2.3. برامج العروض التقديمية وأساسيات البرمجة المكتبية

الموضوع 2.4. نظم إدارة قواعد البيانات والأنظمة الخبيرة

2.4.11. قاعدة بيانات التدريب مع نموذج الزر الرئيسي "Training_students" - تنزيل

برمجة VBA ووحدات الماكرو

2.3. برامج العروض التقديمية وأساسيات البرمجة المكتبية

2.3.7. أساسيات البرمجة المكتبية

لغة البرمجة المرئية الأساسية للتطبيقات: Visual Basic for Applications (VBA)

VBA هي مجموعة فرعية من لغة البرمجة المرئية Visual Basic (VB) التي تتضمن تقريبًا جميع الأدوات اللازمة لإنشاء تطبيقات VB.

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

على سبيل المثال، لفتح محرر VBA من PowerPoint، تحتاج إلى تشغيل الأمر Tools / Macro / VBA Editor. يمكنك العودة من المحرر إلى التطبيق عن طريق تحديد أمر Microsoft PowerPoint في القائمة عرض أو عن طريق الضغط على مجموعة المفاتيح Alt + F11.

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

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

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

دعونا نلقي نظرة على الخوارزمية لإنشاء وظائف المستخدم في VBA:

1. افتح نافذة محرر التعليمات البرمجية لـ VBA عن طريق تنفيذ الأمر Tools / Macro / Visual Basic Editor أو الضغط على Alt+F11.

2. حدد عنصر قائمة المحرر إدراج / وحدة.

3. بعد ذلك، قم بإجراء إدراج / إجراء. في مربع الحوار "إضافة إجراء" الذي يفتح، أدخل اسم الوظيفة (على سبيل المثال، SUM5) وقم بتعيين المفاتيح: اكتب - إلى موضع الوظيفة؛ النطاق - اضبطه على عام ثم انقر فوق موافق.


أرز. 1.

4. في نافذة المحرر لبرمجة VBA، سيظهر قالب الوظيفة: العنوان - الوظيفة العامة SUM5() والنهاية - وظيفة النهاية، والتي تحتاج إلى وضع رمز نص الوظيفة بينها.


أرز. 2.

5. بعد ذلك، ندخل قائمة معلمات الدالة، على سبيل المثال، نشير بين قوسين (x، y، z، i، j)، ونوع البيانات (للحسابات الدقيقة) ونوع القيمة التي ترجعها الدالة (نحن لن أدخله في هذا المثال). بالإضافة إلى ذلك، نقدم نص الدالة، على سبيل المثال، SUM5 = x + y + z + i + j. ونتيجة لذلك نحصل على نص البرنامج التالي:

الوظيفة العامة SUM5(x, y, z, i, j)
SUM5 = س + ص + ض + ط + ي
وظيفة النهاية

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

7. قم بتنفيذ "إدراج/وظيفة" وفي نافذة معالج الوظائف التي تفتح، حدد الفئة "محددة من قبل المستخدم"، وفي نافذة "تحديد وظيفة"، حدد SUM5 وانقر فوق موافق.



أرز. 3.



أرز. 4.

وحدات الماكرو

إنشاء ماكرو

لنقم بإنشاء ماكرو لجمع رقمين تلقائيًا في الخلايا A1 وB1 ووضع النتيجة في الخلية C1، بالإضافة إلى ملء الخلية C1 باللون الفيروزي.

خوارزمية إنشاء ماكرو للمهمة:

1. حدد أدوات/ماكرو، ابدأ التسجيل.

2. في الحقل اسم الماكرو، أدخل اسمًا للماكرو. يجب أن يكون الحرف الأول من اسم الماكرو حرفًا. غير مسموح بالمسافات في اسم الماكرو؛ يمكنك استخدام الشرطة السفلية كفواصل للكلمات.

3. لتشغيل ماكرو باستخدام اختصار لوحة المفاتيح، أدخل حرفًا في حقل اختصار لوحة المفاتيح. يمكنك استخدام المجموعات CTRL+ letter (للأحرف الصغيرة) أو CTRL+SHIFT+ letter (للأحرف الكبيرة)، حيث الحرف هو أي مفتاح حرف على لوحة المفاتيح. لا تقم بتحديد اختصار لوحة المفاتيح القياسي لأن اختصار لوحة المفاتيح المحدد يتجاوز اختصارات لوحة المفاتيح القياسية لـ Microsoft Excel في ذلك الوقت مع هذا المصنف.

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


أرز. 5.

5. انقر فوق موافق.

6. قم بتنفيذ أوامر الماكرو التي تريد تسجيلها.


أرز. 6.

7. انقر فوق الزر "إيقاف التسجيل" الموجود على شريط أدوات نظام التشغيل العائم (إيقاف التسجيل) أو الأدوات / الماكرو / إيقاف الماكرو.

عند انتهاء تسجيل وحدة ماكرو، فإنها تظهر في قائمة وحدات الماكرو الموجودة تحت اسمها.

يقوم محرر VBA تلقائيًا بتسجيل سلسلة من أوامر الماكرو أو البرنامج بناءً على الإجراءات التي تم تنفيذها (الشكل 7.).



أرز. 7.

لاستدعاء ماكرو، يجب عليك تنفيذ الأمر Tools / Macro / Macros. بعد ذلك، في مربع الحوار الذي يحتوي على قائمة وحدات الماكرو، يمكنك العثور عليها بالاسم والنقر فوق الزر "تشغيل".

تعيين زر شريط الأدوات لتشغيل ماكرو

يمكن تشغيل الماكرو باستخدام الزر الموجود على شريط الأدوات المدمج؛ للقيام بذلك، عليك القيام بما يلي:

  1. حدد الإعدادات في قائمة الأدوات.
  2. في مربع الحوار "الإعدادات"، حدد علامة التبويب "الأوامر" وحدد خيار "وحدات الماكرو" في قائمة "الفئات"، وحدد "زر مخصص" في قائمة الأوامر.
  3. من قائمة الأوامر، استخدم الماوس لسحب الزر المخصص إلى شريط الأدوات.
  4. انقر بزر الماوس الأيمن فوق هذا الزر وحدد تعيين ماكرو من قائمة السياق.
  5. أدخل اسمًا للماكرو في حقل اسم الماكرو.

تعيين مساحة لكائن رسومي لتشغيل ماكرو:

  1. إنشاء كائن رسومي.
  2. قم بتطبيق قائمة السياق على الكائن الرسومي المحدد.
  3. حدد أمر تعيين الماكرو من قائمة السياق.
  4. في مربع الحوار تعيين ماكرو إلى كائن الذي يظهر، أدخل اسمًا للماكرو في حقل اسم الماكرو، ثم انقر فوق موافق.

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

  1. حدد أدوات الأمر / وحدات الماكرو / وحدات الماكرو.
  2. حدد اسم الماكرو الذي تريد تغييره من قائمة الاسم.
  3. انقر فوق الزر "تحرير"، سيتم فتح نافذة Visual Basic، حيث يمكنك تحرير أوامر الماكرو المحدد المكتوب في Visual Basic.


إزالة ماكرو:

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

إعادة تسمية ماكرو

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