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

021-47625755
[email protected]

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

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

      0

وی بی - ماکرو

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

تابع InputBox ابزاری برای تعامل با کاربر

  • ارسال شده توسط سامان چراغی
  • دسته بندی وی بی - ماکرو
  • تاریخ ۲ بهمن ۱۳۹۶
  • نظرات ۶ دیدگاه ها
تابع InputBox
نظر شما در مورد این آموزش

تابع InputBox در وی بی (VBA)

یکی از اهداف استفاده از VBA در اکسل تعامل مدیریت شده با کاربران است. راه های مختلفی برای برای تعامل با کاربر در وی بی تعریف شده که یکی از این راه ها استفاده از تابع InputBox در وی بی هست. با اجرا شدن تابع InputBox یک پنجره نمایش داده میشه که امکان دریافت اطلاعات در قالب نوشتن در این پنجره فراهم میشه. در این پنجره دو دکمه OK و جهت تأیید اطلاعات نوشته شده و Cancel جهت انصراف از ورود اطلاعات وجود داره. زمانیکه دکمه OK فشرده شود خروجی تابع InputBox، متنی هست که کاربر نوشته و در صورتیکه Cancel انتخاب شود یک عبارت خالی به عنوان خروجی ارسال میشه.

ساختار تابع InputBox به شکل زیر است:

InputBox( Prompt, [Title], [Default], [XPos], [YPos], [HelpFile], [Context] )

اجزای آرگومان این تابع به این صورت هست:

متنی که به عنوان توضیحات در پنجره نمایش داده میشه Prompt
متن اختیاری که در بالای پنجره به عنوان موضوع نمایش داده میشه [Title]
متن اختیاری که به عنوان مقدار پیشفرض وارد شده توسط کاربر قرار داده میشه [Default]
عددی اختیاری جهت تعیین فاصله افقی  از سمت چپ پنجره نمایش داده شده تا لبه صفحه نمایش [XPos]
عددی اختیاری جهت تعیین فاصله عمودی  از بالای پنجره نمایش داده شده تا لبه صفحه نمایش [YPos]
متن اختیاری جهت مشخص کردن فایل راهنمای مربوط به این پنجره هست.

توجه کنید که اگه این قسمت مقداردهی شده باشه، مقدار آرگومان [Context] هم باید مقداردهی شده باشه

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

چند مثال از تابع InputBox در VBA

مثال اول: دریاف اطلاعات در ساده ترین حالت

1
2
3
4
5
6
Sub GetName()
' درخواست نام از کاربر
Dim UserName As String
UserName = InputBox("لطفا نام خود را وارد کنید")
' نام دریافت شده از کاربر در متغیر تعریف شده ذخیره میشه
End Sub

بعد از اجرای دستور بالا پنجره ای که در شکل 1 مشاهده میکنید جهت دریافت نام کاربری نمایش داده میشه.

دریافت نام کاربری با استفاده از تابع InputBox در اکسل

شکل 1- دریافت نام کاربری با استفاده از تابع InputBox در اکسل

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

نکته:
در پنجره InputBox اگر دکمه OK فشرده بشه، متن وارد شده در پنجره برگردونده میشه و اگر دکمه Cancel فشرده بشه، خروجی تابع InputBox یک متن با محتوای خالی هست.

 

در کد بالا یک متغیر با نام UserName تعریف شده که هدف از تعریف آن ذخیره خروجی تابع InputBox هست که در کدهای بعدی ازش استفاده بشه.

مثال دوم: دریافت اطلاعات از کاربر با تنظیمات بیشتر تابع InputBox

1
2
3
4
5
6
Sub GetName()
‘ درخواست نام کاربری
Dim UserName As String
UserName = InputBox("لطفا نام خود را وارد کنید", " دریافت نام کاربری ", Environ("Username"))
' نام دریافت شده از کاربر در متغیر تعریف شده ذخیره میشه
End Sub

کدی که در مثال یک زدیم رو تکمیل کردم که پنجره مفهوم تری به کاربر نمایش داده بشه و با استفاده از دستوری Environ نام کاربری ویندوز رو هم به صورت مقدار پیشفرض برای این پنجره قرار دادم که کاربر راحت تر باشه. نتیجه اجرای این کد در شکل 2 نمایش داده شده.

دریافت اطلاعات از کاربر با جزئیات بیشتری از تابع InputBox

شکل 2- دریافت اطلاعات از کاربر با جزئیات بیشتری از تابع InputBox

تو این آموزش سعی کردم که کار با تابع InputBox در وی بی رو آموزش بدم. شما هم میتونید مقادیر مختلفی برای آرگومان های این تابع قرار بدید و تا جائیکه لازم هست این پنجره رو برای استفاده از کاربران فایلتون راحت تر کنید.

تابع InputBox یک ابزار اولیه برای دریافت اطلاعات از کاربر هست و در آینده سایر ابزارهای تعامل با کاربر رو آموزش میدیم.

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

مطلب قبلی

تابع SUBSTITUTE در اکسل
۲ بهمن ۱۳۹۶

مطلب بعدی

جستجو و فراخوانی داده در ردیف با تابع Hlookup
۲ بهمن ۱۳۹۶

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

For-VBA-Cover
ایجاد حلقه های تکرار در VBA اکسل با ساختار For
۲۱ فروردین, ۱۳۹۷
Events Cover
رویدادها در اکسل
۱۰ فروردین, ۱۳۹۷
InputBox-Function-Cover
تابع Msgbox و تعامل با کاربر
۱۲ اسفند, ۱۳۹۶

    6 نظر

  1. profile avatar
    علی
    ۲۹ مرداد ۱۳۹۹
    پاسخ

    سلام. ممنون از اطلاعات خوبتون
    فرق INPUTBOX , MSGBOX هردوشون یک کار رو انجام میدن یا بهتر بگم INPUTBOX اون یکی رو میپوشونه. درسته؟

    • profile avatar
      سامان چراغی
      ۳۱ مرداد ۱۳۹۹
      پاسخ

      سلام
      فرق InputBox اینه که این ابزار جهت دریافت اطلاعات استفاده میشه و Msgbox صرفا برای نمایش اطلاعات هست.

  2. profile avatar
    رضا
    ۱۴ فروردین ۱۳۹۹
    پاسخ

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

    • profile avatar
      حسنا خاکزاد
      ۱۴ فروردین ۱۳۹۹
      پاسخ

      درود
      بستگی به ساختار سایت داره که این امکان رو گذاشته باشه یا نه
      اگر امکانش برای سایت باشه، از data/ from web اسم سایت رو میدید و بقیه مراحل رو طی میکنید

  3. profile avatar
    مهدی خسروی
    ۱۴ مهر ۱۳۹۷
    پاسخ

    سلام
    استاد ارجمندیک سوال داشتم
    چگونه میتوان یک فرم در اکسل ایجاد کرد که رابطه کاربری ان ساده و زیبا باشد

    • profile avatar
      سامان چراغی
      ۱۴ مهر ۱۳۹۷
      پاسخ

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

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

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

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

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

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

آخرین مطالب

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

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

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

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

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

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

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

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

021-47625755

[email protected]

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

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

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

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