ساخت Combo box (کمبو باکس) با مقادیر متغیر در اکسل

کنترل Combo box ورودی کاربران را در هنگام وارد کردن داده ها کنترل می کند و مقادیر خارج از لیست Combo box را قبول نمی‌کند.

ساخت Combo box یا صحیح تر بگوییم Drop Down list در Excel توسط Data Validation برای سلولها انجام می‌شود اما موضوع این مقاله ساخت Combo box ای است که کاربر بتواند به راحتی مقادیر آنرا کم یا زیاد کند و لازم نباشد که به صورت دستی این کار انجام شود به عبارت دیگر بتواند مقادیر لیست Combo box را به راحتی کنترل نماید. 
قبل از هر کار ابتدا باید شما با ابزار بسیار مفیدی در Excel 2007 آشنا شوید به نام Table و بدانید که Table یک محدوده پویا ست یعنی Dynamic Range است. 
منظور از محدوده پویا در Excel ، آدرس هایی است که با یک نام شناخته می شوند و شما به جای نوشتن آدرس سلول Excel از آن نام استفاده می نمایید. 
برای ساخت یک محدوده پویا در Excel 2007 – 2010 از ابزار Table استفاده می‌شود. فرض کنید که در یک شرکت شما 5 انبار دارید که کاربر قرار است در لیست ورود کالا، یکی از انبارهای را انتخاب نماید. 
مطابق شکل اسامی انبارها را در یک Sheet جداگانه از  Sheet لیست ورود انبار وارد نمایید و سپس یکی از سلولهای را کلیک کنید و کلید Ctrl+T را بزنید تا این لیست به Table تبدیل شود.

 

 

 
بعد از اینکه Table شما در Excel آماده شد باید یک Name تعریف کنید و منبع Name به ستون "نام انبارها" اشاره کند. 
برای اینکار از سربرگ Formula گزینه Define Name را بزنید. 
در قسمت Name یک اسم دلخواه تعیین کنید مثلا MyStock  (اسم فارسی نگذارید و از Space هم استفاده نکنید). 
در قسمت Refer To با دقت بسیار سلولهایی که نام انبارها در آن نوشته شده است را با Drag موس انتخاب کنید . (سر ستون انتخاب نشود) 
و در نهایت کار شما باید نتیجه ای مانند شکل را بدهد و OK را بزنید.
به Sheet "لیست کالا" بروید و در صورت تمایل می توانید این لیست را نیز به صورت یک Table در آورد و از مزایای Table استفاده کنید . 
سلول یا سلولهای ستون "نام انبار" را انتخاب نمایید. 
از سربرگ Data گزینه Validation را بزنید . 
در پنجره Data Validation گزینه List را انتخاب نمایید و سپس در قسمت Source این پنجره Name تعریف شده در مرحله قبل را همراه با علامت  = وارد نمایید و کلید OK را بزنید: 

 

حال در سلولهای نام یک Combo Box دارید که اسامی انبارها را نشان می دهد، اگر شما در Table "نام انبارها" گزینه ای را اضافه کنید و یا سطری را Delete نمایید متوجه می شوید که این Combo box خودکار به روز می شود .

شما هم تجربه یا دیدگاه خود را بنویسید:

محتوای این فیلد خصوصی است و به صورت عمومی نشان داده نخواهد شد.

متن ساده

  • تگ‌های HTML مجاز نیستند.
  • خطوط و پاراگراف‌ها بطور خودکار اعمال می‌شوند.
کد امنیتی
بهزاد (تایید نشده) در تاریخ شنبه, 1394/11/17 - 13:39 نوشته:

با درود

ذکات علم آموختن آن است

از اینکه علم خود را به همگان عرضه می کنید بسیارسپاسگزارم

اجرکم عندا..

بهمن آتش زبان (تایید نشده) در تاریخ چهارشنبه, 1394/08/20 - 11:09 نوشته:

  مطلب مذکور به سوال ذهنی دیرینه‌ی من پاسخ داد. و باعث گردید فرمهای اداری مورد نظر خود را ساماندهی نموده و اعتبار دهی اولیه به سلولها را با ضریب اطمینان فوق العاده بالا انجام دهم. پیشنهاد بنده این است که راهکار مخفی نمودن شیتی که به عنوان لیست انتخاب میشود را در اختیار علاقمندان قرار گیرد. به این شیوه ضریب امنیت اطلاعات بالا خواهد رفت . شاید هم اینکار را انجام داده باشید.

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

 

حسام (تایید نشده) در تاریخ چهارشنبه, 1394/05/21 - 21:57 نوشته:

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

ممنون میشم جواب بدین

میثم (تایید نشده) در تاریخ یکشنبه, 1393/12/10 - 20:56 نوشته:

عاااااااااااااااااااااااااااااااااااااااااااالی

دمتون گرم.

فرشید (تایید نشده) در تاریخ پنجشنبه, 1393/11/09 - 11:07 نوشته:

یاشااااااااااااااااااااااا