اکسل پدیا، دانشنامه پارسی اکسل

021-47625755
[email protected]

ورود یا ثبت نام

  • دانشنامه اکسل
    • اکسل چیست؟
    • اکسل مقدماتی
    • توابع اکسل
    • نمودار ها
    • وی بی – ماکرو
  • آکادمی اکسل
    • ویدئوهای آموزشی
      • رسم نمودارهای حرفه ای
      • اکسل و شروع حرفه ای
      • اکسل نینجا (اکسل پیشرفته)
      • صفر تا صد Pivot Table
      • برنامه نویسی وی بی (VBA)
    • کتاب ها
      • کتاب های فارسی
      • کتاب های انگلیسی
  • داشبورد های مدیریتی
    • آموزش ساخت داشبورد
    • دانلود داشبورد نمونه
  • افزونه های کاربردی
  • دوره های حضوری
    • اکسل نینجا
    • برنامه نویسی وی بی (VBA)
  • درباره ما
    • Cart

      0

وی بی - ماکرو

  • خانه
  • بلاگ
  • وی بی - ماکرو
  • تابع Msgbox و تعامل با کاربر

تابع Msgbox و تعامل با کاربر

  • ارسال شده توسط سامان چراغی
  • دسته بندی وی بی - ماکرو
  • تاریخ ۱۲ اسفند ۱۳۹۶
  • نظرات ۴ دیدگاه ها
تابع Msgbox
5 / 5 ( 5 امتیاز )

تابع Msgbox در VBA و نمایش پیغام به کاربر

در هنگام ساخت برنامه با استفاده از VBA و در بسیاری از موارد نیاز هست که اطلاعت خاصی به کاربر نمایش داده شود. برای نمایش اطلاعات به کاربر روش های مختلفی تعریف شده که یکی از این روش ها استفاده از تابع Msgbox هست. با اجرای دستور کد Msgbox یک پنجره به کاربر نمایش داده میشه که حاوی متنی هست که تعیین کردیم. در VBA امکان شخصی سازی این پنجره تا حدودی میسر شده که در این آموزش در این مورد و نحوه استفاده از تابع Msgbox صحبت میکنیم.

ساختار تابع MsgBox به صورت زیر هست:

MsgBox( Prompt, [Buttons], [Title], [HelpFile], [Context] )

شرح این آرگومان ها رو در جدول زیر ببینید:

Prompt: متنی که قرار است به کاربر به عنوان پیغام نمایش داده بشه.

[Buttons]: آرگومان اختیاری که به واسطه مقادیری که در آن قرار داده میشه، نوع پنجره نمایش داده شده و دکمه های آن تعیین خواهد شد. برخی از مقادیری که در این آرگومان میتونید وارد کنید از این قراره:

مقدار دکمه های نمایش داده شده
vbOKOnly نمایش دکمه OK
vbOKCancel نمایش دکمه OK و Cancel
vbAbortRetryIgnore نمایش سه دکمه Abort،Retry و Ignore
vbYesNoCancel نمایش دکمه های Yes، No و Cancel
vbYesNo نمایش دکمه های Yes و No
vbRetryCancel نمایش دکمه های Retry و Cancel
vbMsgBoxRtlReading تعیین نوشته های پنجره به صورت راست به چپ برای زبان های فارسی و …
vbMsgBoxRight قرار دادن متن پیغام در سمت راست
vbExclamation نمایش آیکون اخطار در پیغام
vbInformation نمایش علامت تعجب در پیغام
vbQuestion نمایش آیکون علامت سوال در پیغام
vbCritical نمایش آیکون ضربدر در پیغام
حتما بخوانید:  همه چیز از ضبط ماکرو در اکسل

اگر مقدار این آرگومان خالی بماند، حالت پیشفرض برای پیغام نمایش داده شده به صورت vbOKOnly در نظر گرفته خواهد شد.

نکته:
در این آرگومان امکان تعیین چند حالت با هم وجود داره و کافیه برای این کار گزینه های مختلف با علامت + از هم جدا بشن.

 

[Ttile]: متنی اختیاری جهت نمایش عنوان در پنجره نمایش داده شده استفاده میشه.

[HelpFile]: متن اختیاری جهت مشخص کردن فایل راهنمای مربوط به این پنجره هست. توجه کنید که اگه این قسمت مقداردهی شده باشه، مقدار آرگومان [Context] هم باید مقداردهی شده باشه.

[Context]: یک عدد اختیاری جهت تعیین عنوان مورد نظر در فایل راهنمای مشخص شده در بخش [HelpFile] هست.

با مقدار دهی آرگومان های مختلف این تابع و قرار دادن این دستور در یک Sub میتونید اون رو اجرا و نتیجه (در شکل 1 نمایش داده شده) رو ببینید:

1
2
3
Sub Show_Massage()
MsgBox "من سامان چراغی هستم", vbOKOnly + vbInformation, "اکسل پدیا"
End Sub

پنجره نمایش داده شده توسط کد Msgbox

شکل 1- پنجره نمایش داده شده توسط کد Msgbox

در این کد، دو حالت در vbOKOnly و vbInformation همزمان انتخاب شده که با علامت + از هم جدا شده و در آرگومان دوم تابع قرار داده شده.

خروجی تابع Msgbox

بعد از نمایش پیغام به کاربر، کاربر باید یک گزینه رو انتخاب کنه. بعد از انتخاب گزینه توسط کاربر، مقدار تعریف شده متناظر با دکمه انتخاب شده برگردانده میشه. پس باید بدونیم مقدار تعریف شده متناظر با هر دکمه چی هست. در جدول زیر این مقادیر رو میبینید:

حتما بخوانید:  نمایش داده های بزرگ و کوچک در یک نمودار
دکمه انتخاب شده عدد متناظر عبارت متناظر
دکمه OK 1 vbOK
دکمه Cancel 2 vbCancel
دکمه Abort 3 vbAbort
دکمه Retry 4 vbRetry
دکمه Ignore 5 vbIgnore
دکمه Yes 6 vbYes
دکمه No 7 vbNo

در حالت معمول بعد از فشردن هر کدوم از این دکمه هیچ اتفاق خاصی نمیفته و شما به عنوان توسعه دهنده اکسل باید با استفاده از دستورهای شرطی و بررسی اینکه کدام دکمه انتخاب شده، تعریف کنید که چه اتفاقی بیفته.

مثال: حذف رکورد اطلاعاتی

1
2
3
4
5
6
7
Sub Remove_Record
IF Msgbox (“آیا مایل به حذف این کاربر هستید؟ با حذف کاربر قادر به بازگردانی آن نخواهید بود”, vbYesNo, “برنامه مدیریت مشتریان”) = vbYes Then
            ‘کدهای حذف رکورد مشتری
Else
            ‘کدهای مربوط به عدم حذف رکورد مشتری
End IF
End Sub

با اجرای این کد پنجره شکل 2 نمایش داده میشه که از کاربر سوالی میپرسه و بر اساس گزینه انتخاب شده ادامه کد اجرا میشه.

بررسی دکمه انتخاب شده در تابع Msgbox

شکل 2- بررسی دکمه انتخاب شده در تابع Msgbox

تو این مطلب در مورد تابع Msgbox صحبت کردیم و آرگومان هاش رو بررسی کردیم. حالت های مختلفی رو میشه برای این تابع تعریف کرد و بسته به گزینه انتخابی توسط کاربر، نتایج مرتبط رو نمایش داد.

برچسب:تابع Msgbox, متوسط

  • اشتراک گذاری:
profile avatar
سامان چراغی
من سامان چراغی هستم. دانش آموخته مقطع فوق لیسانس دانشگاه تربیت مدرس در رشته مهندسی صنایع. از سال 1388 اکسل و برنامه نویسی VBA رو به صورت حرفه ای شروع کردم.

مطلب قبلی

روش های چسباندن اطلاعات
۱۲ اسفند ۱۳۹۶

مطلب بعدی

کاربرد فوق العاده ابزار Watch Window
۱۲ اسفند ۱۳۹۶

ممکن است همچنین دوست داشته باشید

For-VBA-Cover
ایجاد حلقه های تکرار در VBA اکسل با ساختار For
۲۱ فروردین, ۱۳۹۷
Events Cover
رویدادها در اکسل
۱۰ فروردین, ۱۳۹۷
Macro-Security-Cover
تنظیمات امنیتی ماکرو در اکسل
۲۵ بهمن, ۱۳۹۶

    4 نظر

  1. profile avatar
    زمانی
    ۲۳ اردیبهشت ۱۳۹۹
    پاسخ

    با سلام واحترام
    علاقه مند به آموزش VBA هستم از کجا شروع کنم و با چه فایل و کتاب آموزشی
    مچکرم

    • profile avatar
      حسنا خاکزاد
      ۲۳ اردیبهشت ۱۳۹۹
      پاسخ

      درود بر شما
      میتونید از این کتاب شروع کنید
      یا اینکه این ویدئو رو تهیه کنید و استفاده کنید

  2. profile avatar
    آرش
    ۲۹ آذر ۱۳۹۸
    پاسخ

    خیلی ممنون
    ارزش انسان هایی که داشته ها و اطلاعاتشون رو بدون منت به اشتراک میذارن بسیار بالاست و با یک قدر دانی کوچک نمیشه جبران کرد
    بسیار لطف کردید

  3. profile avatar
    مهران کرامت زاده
    ۲۲ شهریور ۱۳۹۷
    پاسخ

    با سپاس
    اطلاعات دریافتی بسیار مفید و مناسب است .

نظر بدهید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

-- بارگیری کد امنیتی --

زودتر از دیگران با خبر بشید

از طریق ایمیل، مطالب آموزشی درباره اکسل و برنامه نویسی وی بی و سایر رویدادهای مهم را دریافت خواهید کرد.
  • این فیلد برای اعتبار سنجی است و باید بدون تغییر باقی بماند .

آخرین مطالب

مقادیر متمایز در اکسل
تفاوت داده Distinct و Unique چیست؟ چطور میشه مشخص کرد
۱۰فروردین۱۴۰۰
استفاده از چندین تابع IF اکسل در هم
توابع IF تو در تو و نکات مهمی که باید بدانید
۲۷اسفند۱۳۹۹
تابع Trim
تابع Trim در اکسل
۲۱اسفند۱۳۹۹
کاربرد Power Query
چند مثال کاربردی از ابزار Power Query
۱۵اسفند۱۳۹۹

وجود یک منبع جامع و به روز که بدونی همیشه پشتیبانته برای یادگیری ضروریه. اکسل پدیا رو برای همین به وجود آوردیم.

پاسخ سوالات شما

اگر سوالات اکسلی دارید تو تالار گفتمان اکسل پدیا میتونید مطرح کنید. اساتید بسیاری هستند که به شما کمک میکنند.

کانال و تالار گفتمان اکسل پدیا

ورود به تالار گفتگو تلگرام

عضویت در خبرنامه
با عضویت در خبرنامه، ایمیل‌های آموزشی درباره اکسل و برنامه نویسی وی بی را دریافت خواهید کرد.

  • این فیلد برای اعتبار سنجی است و باید بدون تغییر باقی بماند .

021-47625755

[email protected]

آدرس: تهران، میدان دوم صادقیه، برج گلدیس، طبقه 7 واحد 721

دانلود اپ اکسل پدیادانلود از کافه بازار

تمامی حقوق برای اکسل پدیا محفوظ است.

  • اکسل از راه دور
  • شرایط و قوانین
  • درباره ما
  • تماس با ما