کنترل 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 را بزنید.
سلول یا سلولهای ستون "نام انبار" را انتخاب نمایید.
از سربرگ Data گزینه Validation را بزنید .
در پنجره Data Validation گزینه List را انتخاب نمایید و سپس در قسمت Source این پنجره Name تعریف شده در مرحله قبل را همراه با علامت = وارد نمایید و کلید OK را بزنید:
حال در سلولهای نام یک Combo Box دارید که اسامی انبارها را نشان می دهد، اگر شما در Table "نام انبارها" گزینه ای را اضافه کنید و یا سطری را Delete نمایید متوجه می شوید که این Combo box خودکار به روز می شود .
شما هم تجربه یا دیدگاه خود را بنویسید:
بسیار عالی، سپاسگزارم
عالی بود واقعا ممنون
بسیار کارامد
خیلی ممنونم از آموزش خوب و مفیدتون. خیلی استفاده کردم و یاد گرفتم.
خوب توضیح داده شده بود. متشکرم
بسیار عالی و سپاس فراوان
سلام. خیلی خیلی خیلی عالی و کاربردی بود.
عالی بود ممنون
سلام من اینکارو میکنم و ذخیره میکنم ازش میام بیرون. بعد اکسل باز میکنم همش میپره
. از اول باید باز انجامش بدم . چرا؟
ووردم 2010 هستش . دلیلش چیه؟
اینگونه نباید باشد، مشکل جای دیگری است.
با سلام
من یک فایل اکسل دارم با این نکاتی که شما آموزش دادید خیلی زیبا و کار کردن باهاش راحت شد.
فقط در اکسلی که آماده کردم تاریخ هم باید ثبت بشه. خیلی لیست طولانی شده وقتی تاریخ رو دستی نوشتم.
چه راه بهتری هست که تاریخ زیباتر و راحتتر بشه انتخاب کرد. مثلا بشه Calendar باز بشه.؟
این تکنیک اصلا برای تاریخ ها کاربردی ندارد و معمولا کسی این کار را انجام نمی دهد. تاریخ ها را کاربر باید تایپ کند. بهتر است برای تاریخ شمسی یک data validataion از نوع whole number و بین مثلا عدد 950101 تا 970101 قرار دهید تا اشتباهات تایپی کاربر به حداقل برسد.
در اکسل date picker (انتخابگر تاریخ) نداریم و معمولا انتخابگر ها کار تایپ و ورودی اطلاعات را کمی هم کند می کنند زیرا باید با موس انتخاب شوند و ... و معمولا در نرم افزارها آنچنان متداول نیست و حتی در مواردی هم که وجود دارد، کاربران ترجیج می دهند که تاریخ را دستی تایپ کنند.
خیلی کمکم کرد. ممنون
مرسی واقعا عالی بود
خیلی زیبا و کامل توضیح داده شده بود.
موفق باشید
با درود
ذکات علم آموختن آن است
از اینکه علم خود را به همگان عرضه می کنید بسیارسپاسگزارم
اجرکم عندا..
مطلب مذکور به سوال ذهنی دیرینهی من پاسخ داد. و باعث گردید فرمهای اداری مورد نظر خود را ساماندهی نموده و اعتبار دهی اولیه به سلولها را با ضریب اطمینان فوق العاده بالا انجام دهم. پیشنهاد بنده این است که راهکار مخفی نمودن شیتی که به عنوان لیست انتخاب میشود را در اختیار علاقمندان قرار گیرد. به این شیوه ضریب امنیت اطلاعات بالا خواهد رفت . شاید هم اینکار را انجام داده باشید.
بهرصورت بسیار سپاسگزارم. قدرت انعطاف پذیری من افزایش یافت و بصورت لذت بخش از آن استفاده خواهم نمود. این دانش را مرهون زحمات شما هستم
واااااااااااااااااای خیلی عالی بود.من توی اکسس این کارو میکردم همش دنبال این کار توی اکسل بودم خیلی ممنونم.فقط یه سوال چطور میشه combo رو شرطی کرد یعنی وقتی مثلا انبار تبریز رو انتخاب میکنی بره توی یه شیت خاص؟
ممنون میشم جواب بدین
عاااااااااااااااااااااااااااااااااااااااااااالی
دمتون گرم.
یاشااااااااااااااااااااااا
خيلي ممنونم
بسيار مفيد و كارا
خصوصا به خاطر داشتن تصوير
سپاس گذارم
خیلی عالی
فوق العاده بود مرسی .
عالی بود ممنون
salam . . . mamnun vaqean . . . khili khub tozih dadin . . . 10000000000000000000 LIKKKKKKKKKKKKKKKKKKKKKKK