أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في vba

أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في VBA




في هذه التدوينة من سلسلة أساسيات VBA اكسل سنتكلم على مربع الحوار أو بالفرنسية la boite de dialogue

MSGBOX

الى حد الان ، استعملنا فقط مربع الحوار MsgBox لعرض المعلومات:

Sub effacerB2() Range("B2").ClearContents MsgBox "Le contenu de B2 a été effacé !" End Sub

في هذه الحالة، MsgBox يستخدم فقط مع حجة واحدة.

تطبيق نتيجة هذا الرمز أعلاه:

أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في VBA



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

فيما يلي الحجج الثلاثة التي سنملأها:

MsgBox([TEXTE], [BOUTONS], [TITRE])

  • النص نص مربع الحوار
  • الأزرار : اختيار الأزرار (نعم ، لا ، إلغاء ، إلخ) + خيارات أخرى
  • العنوان : عنوان مربع الحوار

Sub effacerB2() If MsgBox("Etes-vous certain de vouloir supprimer le contenu de B2 ?", vbYesNo, "Demande de confirmation") = vbYes Then Range("B2").ClearContents MsgBox "Le contenu de B2 a été effacé !" End If End Sub

تطبيق نتيجة هذا الرمز أعلاه:

أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في VBA



vbYesNo  يشير إلى أن أزرار مربع الحوار التي هي"نعم" و "لا" ، vbYes  يتوافق مع الزر "نعم":

If MsgBox("Texte", vbYesNo, "Titre") = vbYes Then 'Si le bouton Oui est cliqué


الاحتمالات المختلفة للوسيطة الثانية من  MSGBOX

أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في VBA



القيم 0 هي القيمة الافتراضية.

الحجة الثانية MsgBox يمكن أن تأخذ قيمًا متعددة من هذه المجموعة.

على سبيل المثال ، لمربع حوار به "نعم ، لا ، إلغاء" + رمز التعجب + الزر 2 افتراضيًا:

MsgBox("Texte", vbYesNoCancel + vbExclamation + vbDefaultButton2, "Titre")

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

MsgBox("Texte", vbYesNoCancel + vbExclamation + vbDefaultButton2, "Titre") MsgBox("Texte", 3 + 48 + 256, "Titre") MsgBox("Texte", 307, "Titre")

القيم التي تم اعادة ارسالها عبر MSGBOX



أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في VBA


هنا مثالMsgBox التي تظهر في الحلقة طالما لم يتم النقر فوق الزر "نعم"

Sub humour() Do If MsgBox("Aimez-vous le site Excel-Pratique ?", 36, "Sondage") = vbYes Then Exit Do 'Si réponse = Oui on sort de la boucle End If Loop While True 'Boucle infinie MsgBox ";-)" End Sub

فاصل الأسطر في  MSGBOX


للانتقال إلى السطر ، يمكنك إدخال الحرف المقابل لفاصل السطر باستخدام وظيفة CHr ، على سبيل المثال:

MsgBox "Exemple 1" & Chr(10) & "Exemple 2" & Chr(10) & Chr(10) & "Exemple 3"

تطبيق نتيجة هذا الرمز أعلاه:


أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في VBA


INPUTBOX أو صندوق الادخال

الوظيفة صندوق الإدخال أو بالفرنسية InputBox  يطلب من المستخدم إدخال قيمة في مربع حوار ، على سبيل المثال:

Sub exemple() Dim resultat As String resultat = InputBox("Texte ?", "Titre") 'La variable reçoit la valeur entrée dans l'InputBox If resultat <> "" Then 'Si la valeur est différente de "" on affiche le résultat MsgBox resultat End If End Sub

تطبيق نتيجة هذا الرمز أعلاه:


أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في VBA


من الممكن أيضًا الإشارة إلى قيمة افتراضية في الحجة الثالثة:

InputBox("Texte ?", "Titre", "Valeur par défaut")

تطبيق نتيجة هذا الرمز أعلاه:

أساسيات VBA إكسل : كيفية استخدام مربعات الحوار في VBA






Comments
No comments
Post a Comment



    Reading Mode :
    Font Size
    +
    16
    -
    lines height
    +
    2
    -