لیست کشویی با کامبوباکس در اکسل

کامبوباکس در یوزرفرم اکسل

وبسایت آموزشی اکسل

کامبوباکس در یوزرفرم اکسل

با نام و یاد خداوند بخشنده و مهربان در این مقاله آموزشی قصد داریم پیرامون کامبوباکس در یوزفرم اکسل و کاربرد آن اطلاعات مفیدی را خدمت شما عزیزان و دنبال کنندگان محترم سایت آموزشی اکسل لرن، ارائه کنیم. لذا خواهشمندیم ما را تا پایان این مقاله آموزشی همانند همیشه ما را همراهی و با نظرات گرم خود دلگرم کنید.

کاربرد کامبوباکس(Combobox) در یوزفرم اکسل چیست؟

در قدم اول می بایست با کاربرد کامبوباکس(Combobox) در یوزفرم اکسل آشنا شوید. به منظور درک بهتر ابزار کامبوباکس، اجازه دهید معادل فارسی آن را به شما معرفی کنیم. لیست کشویی در اکسل معادل فارسی ابزار کامبوباکس(Combobox) در یوزفرم اکسل محسوب می شود.

ایجاد لیست کشویی در اکسل

به منظور ایجاد لیست کشویی در اکسل می توانید از ابزار Data Validation کمک بگیرید. بدین منظور تنها کافی است محدوده ای را همانند تصویر زیر در صفحه گسترده اکسل خود، در حالت انتخاب قرار دهید:

نحوه ایجاد لیست کشویی در اکسل
ایجاد لیست کشویی در اکسل

سپس از سربرگ Data  برروی ابزار Data Validation کلیک کنید:

فراخوانی ابزار Data Validation در اکسل
ایجاد لیست کشویی در اکسل

در ادامه مقدار Allow را برروی List تنظیم کنید و سپس مقادیر لیست خود را با کاما , از یکدیگر تفکیک کنید:

تعریف مقادیر اولیه در لیست کشویی
ایجاد لیست کشویی در اکسل

حال با کلیک کردن برروی OK، لیست ایجاد شده برروی سلول های محدوده انتخابی بصورت زیر خواهد بود:

مشاهده خروجی لیست کشویی
ایجاد لیست کشویی در اکسل

البته لازم است بدانید که ممکن است مقادیر لیست شما از تعداد زیادی آیتم تشکیل شده باشد. بدین منظور می توانید همانند تصویر زیر داده های لیست کشویی خود را از سلول های اکسل فراخوانی کنید:

استفاده از محدوده در Data Validation اکسل
ایجاد لیست کشویی در اکسل

در پایان نیز با کلیک کردن برروی OK، لیستی از اسامی داخل سلول های اکسل خواهید داشت.

ایجاد لیست کشویی به هم وابسته در اکسل

خیلی از کاربران نرم افزار اکسل به دنبال ایجاد لیست کشویی به هم وابسته هستند به گونه ای که با تغییر یک مقدار از لیست اول، مقادیر موجود در لیست کشویی دوم نیز اتوماتیک تغییر کنند. برای این کار ابتدا نیاز است تا محدوده داده های خود را همانند تصویر زیر به جدول تبدیل کنید:

لیست کشویی وابسته در اکسل
ایجاد لیست کشویی به هم وابسته در اکسل

سپس لیست کشویی اولیه را از عناوین موجود همانند تصویر زیر ایجاد نمایید:

لیست کشویی در اکسل
ایجاد لیست کشویی به هم وابسته در اکسل

نتیجه تا این لحظه با کلیک کردن برروی OK بصورت زیر خواهد بود (لیستی از عناوین محصولات):

لیست کشویی در اکسل
ایجاد لیست کشویی به هم وابسته در اکسل

در ادامه سلول وابسته و یا به عبارتی سلولی که قرار است لیست کشویی وابسته داشته باشد را در حالت انتخاب قرار دهید:

لیست کشویی در اکسل
ایجاد لیست کشویی به هم وابسته در اکسل

حال مجدد از مسیر Data > Data Validation را انتخاب و فرمول زیر را در قسمت List درج نمایید:

دستور شرطی if در لیست کشویی
ایجاد لیست کشویی به هم وابسته در اکسل

نتیجه فرمول نویسی شما بصورت زیر خواهد بود:

فرمول شرطی IF در ایجاد لیست کشویی اکسل
ایجاد لیست کشویی به هم وابسته در اکسل

حال با کلیک کردن برروی OK لیست کشویی شما بصورت زیر خواهد بود:

نتیجه لیست کشویی وابسته
ایجاد لیست کشویی به هم وابسته در اکسل

که با تغییر مقدار لیست کشویی اولیه، لیست کشویی دوم به عنوان وابسته نیز تغییر خواهد کرد:

مشاهده نتایج لیست کشویی وابسته
ایجاد لیست کشویی به هم وابسته در اکسل

ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

تا به اینجای کار آموختیم که کامبوباکس در یوزفرم همان لیست کشویی در اکسل خواهد بود. به منظور ایجاد کامبوباکس ابتدا می بایست با فشردن کلیدهای ترکیبی ALT + F11 وارد محیط ویرایشگر VBE شد:

ورود به محیط به VBE اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

سپس همانند تصویر زیر اقدام به ایجاد یک Userform در محیط VBE نمایید:

ایجاد یوزرفرم در اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

خروجی شما با ایجاد یوزفرم بصورت زیر خواهد بود:

ایجاد یوزرفرم در محیط وی بی ای اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

در ادامه با کلیک کردن برروی ابزار کامبوباکس از نوار Toolbox، اقدام به ایجاد کامبوباکس برروی یوزفرم خود نمایید:

قرار دادن کامبوباکس در یوزرفرم
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

سپس با راست کلیک کردن برروی Userform1 و انتخاب گزینه View Code همانند تصویر زیر، وارد محیط کدنویسی یوزفرم شوید:

محیط کدنویسی کامبوباکس در یوزرفرم اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

در ادامه محیط کدنویسی یوزفرم را مشاهده می کنید:

محیط کدنویسی یوزرفرم در وی بی ای اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

ابتدا می بایست مقادیر اولیه کامبوباکس شماره 1 خود را تعریف نماییم. بدین منظور از بخش Userform، اقدام به فراخوانی بخش می کنیم:

مقداردهی اولیه به کامبوباکس
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

حال همانند تصویر زیر اقدام به اضافه کردن مقادیر اولیه به کامبوباکس شماره 1 خواهیم نمود:

مقداردهی به کامبوباکس در یوزرفرم اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

دقت نمایید، در وی بی ای اکسل برای مقداردهی به کامبوباکس ها از دستور AddItem استفاده می گردد.

حال با نمایش یوزفرم (کلید F5 جهت نمایش فرم) خروجی کامبوباکس شماره 1 شما بصورت زیر خواهد بود:

نتیجه مقداردهی به کامبوباکس یوزرفرم
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

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

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

بدین منظور همانند تصویر زیر برروی کامبوباکس شماره 1 دابل کلیک(Double Click) نمایید:

نحوه ورود به محیط کدنویسی کامبوباکس در یوزرفرم اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

با دابل کلیک کردن برروی کامبوباکس شماره 1، همانند تصویر زیر وارد محیط کدنویسی کامبوباکس مذکور خواهید شد:

مشاهده محیط کدنویسی کامبوباکس
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

حال همانند لیست کشویی تعریف شده در صفحه گسترده اکسل، در محیط یوزفرم نیز نیاز به تعریف شرط خواهیم داشت. شرط را همانند تصویر به وسیله دستور شرطی Select Case برای گزینه Fruit تعریف خواهیم نمود:

مقداردهی کامبوباکس در یوزرفرم اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

همانطور که در تصویر فوق نیز مشاهده می کنید، در صورتی که کاربر مقدار Fruit را از لیست کشویی اول انتخاب کند، مقادیر تعیین شده در لیست کشویی دوم (کامبوباکس شماره 2) نمایش داده خواهد شد.

در ادامه سایر شروط را نیز به صورت فوق تعریف خواهیم نمود:

پس از تعریف شروط فوق و اجرای مجدد یوزفرم خروجی شما بصورت زیر خواهد بود:

مشاهده نتیجه اولیه کامبوباکس وابسته
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

بخش Vegetables را نیز مشاهده نمایید:

نتیجه اولیه کامبوباکس وابسته در یوزرفرم اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

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

حذف کامبوباکس در یوزرفرم اکسل
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

بسیار عالی حال دیگر مشکل سابق را نخواهیم داشت زیرا با تغییر هر مقدار کامبوباکس شماره 1، ابتدا مقادیر موجود در کامبوباکس شماره 2 حذف و سپس مقادیر جدید با توجه به شروط تعریف شده جایگزین خواهد شد:

مشاهده نتیجه نهایی کامبوباکس
ایجاد کامبوباکس(Combobox) در یوزرفرم اکسل

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

پیشنهاد ما به شما