من خلال استعراض التعليقات ، رأيت بضعة أسئلة للقارئ حول كيفية العمل مع مربعات الإدخال والرسائل Visual Basic في PowerPoint.
سنوفر في هذا البرنامج التعليمي معرفة أساسية أساسية للغاية لمساعدتك في استخدام هذه القدرات عند أتمتة إنشاء عرضك التقديمي.
إعداد علامة تبويب المطور
أولاً ، سنحتاج إلى تمكين بيئة المطور لبرنامج PowerPoint. اتبع هذا البرنامج التعليمي لإعداد علامة تبويب التطوير الخاصة بك.
في PowerPoint ، انتقل إلى قائمة Developer ، واضغط على Visual Basic.
في شجرة المشروع ، انقر بزر الماوس الأيمن على العرض التقديمي ، واضغط على إدراج ، ثم اختر الوحدة النمطية. سيتم إنشاء وحدة VBA جديدة ، وهذا هو المكان الذي ستكتب فيه التعليمات البرمجية الخاصة بك.
مربعات الرسائل في PowerPoint
مربعات الرسائل هي نوع من الشرح الذاتي ، وهدفها هو عرض بعض المعلومات المفيدة للمستخدم النهائي. اكتب الكود التالي في الوحدة الخاصة بك:
Sub simplemessagebox()
MsgBox ("This is a simple message box")
End Sub
اضغط على F5 أو Run وشاهد النتيجة:

مثال على الرسالة ومربع الإدخال
بخلاف مربعات الرسائل ، يتم استخدام مربعات الإدخال للحصول على تعليقات من المستخدم. لنلق نظرة على المثال أدناه. يقوم البرنامج النصي تلقائيًا بإدراج شرائح جديدة في العرض التقديمي.
إليك ما سننفذه:
- سنقوم أولاً بمطالبة المستخدم بعدد الشرائح المراد إضافتها (باستخدام مربع الإدخال).
- سنقوم بعد ذلك بإخطار المستخدم بعدد الشرائح التي سيتم إنشاؤها (باستخدام صندوق الرسائل)
- أخيرًا ، سيتم المضي قدمًا وإنشاء الشرائح برمجيًا.
- في الأخير سنقوم بحفظ العرض التقديمي المعدل
Sub CreateSlidesMessage()
Dim NumSlides As Integer
Dim MsgResult As VbMsgBoxResult
' How many slides to create
NumSlides = InputBox("Enter number of slides to create", "Create Slides")
'User confirmation
MsgResult = MsgBox("Powerpoint will create " & NumSlides & " slides. Proceed?", vbApplicationModal, "Create Slides")
'create the slides
If MsgResult = vbOK Then
For i = 1 To NumSlides
Set NewSlide = ActivePresentation.Slides.Add(Index:=i + 1, Layout:=ppLayoutBlank)
Next i
'Save the Presentation
ActivePresentation.SaveAs("Your Presentation.pptx")
MsgBox ("Presentation Saved.")
End If
End Sub
نأمل أن يكون هذا قد ساعد ، فلا تتردد في ترك التعليقات حسب الحاجة.
تحقق من القيم التي تم إرجاعها من الدالة MsgBox
عندما ينبثق مربع الحوار MsgBox لتفاعل المستخدم، إذا كنت تريد معرفة الخيار الذي نقر عليه المستخدم، يمكنك استخدام الكود التالي للتحقق من ذلك:
يتحقق الرمز من الزر الذي يختاره المستخدم في MsgBox
وفقًا لاختيار كل مستخدم، يمكنك الاستمرار في تشغيل رموز مختلفة، ويمكنك تعلم رموز VBA هذه في دورات VBA التدريبية مع كبار الخبراء في تعلم Excel عبر الإنترنت.
هل يدعم MsgBox اللغة الفيتنامية المحركة؟ الجواب لا، لماذا؟ لأن مايكروسوفت برمجته بهذه الطريقة. ولكن هل هناك أي طريقة أخرى؟ الإجابة هي نعم، يمكنك قراءة المقالة استخدام اللغة الفيتنامية المحركة مع MsgBox VBA
كل الكود الموجود في المقالة يمكنك رؤيته في Gist:
| |
Sub HeoBasicMessageBox() |
| |
MsgBox "Xin chao cacban da den voi Hoc Excel Online" |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoBasicMessageBoxWithTitle() |
| |
MsgBox "Xin chao cacban da den voi Hoc Excel Online", , "HEO" |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoBasicMessageBox2() |
| |
MsgBox "Hoc Excel Online"، _ |
| |
vbOKإلغاء + _ |
| |
فبكريتيكال + _ |
| |
vbDefaultButton1 + _ |
| |
vbApplicationModal |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoBasicMessageBox3() |
| |
MsgBox "Hoc Excel Online"، _ |
| |
vbOKإلغاء + _ |
| |
فبكريتيكال + _ |
| |
vbDefaultButton1 + _ |
| |
vbSystemModal |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult1() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
|
| |
الاستجابة = MsgBox("Hoc Excel Online", vbYesNo + vbCritical) |
| |
استجابة رسالة MsgBox |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult2() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
|
| |
الاستجابة = MsgBox("Hoc Excel Online", vbYesNo + vbQuestion) |
| |
استجابة رسالة MsgBox |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult3() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
|
| |
الاستجابة = MsgBox("Hoc Excel Online", vbYesNo + vbExclamation) |
| |
استجابة رسالة MsgBox |
| |
|
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult4() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
|
| |
الاستجابة = MsgBox("Hoc Excel Online", vbYesNo + vbInformation) |
| |
استجابة رسالة MsgBox |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult5() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
الاستجابة = MsgBox("خطأ", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton) |
| |
استجابة رسالة MsgBox |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult6() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
الاستجابة = MsgBox("خطأ", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton) |
| |
استجابة رسالة MsgBox |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult7() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
الاستجابة = MsgBox("خطأ", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton) |
| |
استجابة رسالة MsgBox |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult8() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
الاستجابة = MsgBox("خطأ", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton) |
| |
استجابة رسالة MsgBox |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult9() |
| |
استجابة خافتة باسم VbMsgBoxResult |
| |
الاستجابة = MsgBox("هل تريد المحاولة مرة أخرى؟", vbRetryCancel + vbQuestion, "خطأ") |
| |
استجابة رسالة MsgBox |
| |
نهاية الفرعية |
| |
|
| |
Sub HeoMsgBoxResult10() |
| |
MsgBox "حدث خطأ فادح", vbCritical, "خطأ في النظام" |
| |
نهاية الفرعية |