در فایل نمونه ای که در ذیل ارائه شده است از Userform و ابزار Toolbox بکار گرفته شده و عملیات جداسازی توسط کدهای VBA انجام می شود.
نحوه محاسبه در آن، بصورت سلیقه ای بوده و کاربران عزیز می توانند نحوه محاسبه را با متغییرات جدول خود تنظیم و استفاده کنند.
این پروژه برای منابع انسانی و حسابداران بزرگوار لازم و یک نیاز است و عزیزانی که بخواهند از این پروژه استفاده کنند به صفحه اینستاگرام kh.d_pro_excel_vba@ رجوع و از این طریق می توانند درخواست خود را مطرح کنند.
برای بیشتر کاربران عزیز، اتفاق افتاده که در فایل خود، به عنوان مثال، با انتخاب نام پرسنل، تصویر آن در صفحه نمایش داده شود و این امکان برای کاربر، یک نیاز است و می تواند دقت و کنترل کاربر را افزایش دهد.به منظور ساخت چنین فایلی، بدون نیاز به VBA ، می توان با فرمول نویسی ساده در اکسل، تهیه کرد. برای اجرای این پروژه از تابع CHOOSE و تعریف نام محدوده(Name Manager) و همچنین از کلید رادیویی(Option Button) به عنوان انتخاب گزینه استفاده شده است.
در فایل نمونه، تعداد دو تصویر برای توضیح روش اجرای پروژه در نظر گرفته شده است
تصاویر دلخواه را در صفحه اکسل منتقل کرده و در محل مشخص قرار میدهیم(در فایل نمونه یکی از تصاویر در آدرسSheet1!$A$196:$H$210 قرار داده شده است). سپس توسط ابزار Name Manager(تب Formulas) محدوده ای با فرمول داینامیک (=CHOOSE(Sheet1!$W$1,a,b)) ایجاد میکنیم. برای نمایش تصاویر، نیاز به Shapes داریم تا بتوانیم تصاویر در آن نمایش دهیم و این Shapes را به محدوده نامگذاری شده دارای فرمول داینامیک( در فایل به نام "انتخاب_تصویر" تعریف شده است) متصل می کنیم بدین صورت که ابتدا Shapes ایجاد شده را انتخاب و سپس در فرمولبار با زدن علامت مساوی، نام محدوده را نوشته و کلید اینتر را می زنیم.
برای ایجاد جلوه در فایل جهت تعریف گزینه برای انتخاب، از Option Button (تبDeveloper) استفاده کرده و در صفحه اکسل ایجاد می کنیم و به یکی از سلولهای صفحه اکسل متصل می کینم(در فایل به سلول $W$1 متصل شده است). همان طور که متوجه شدید سلول $W$1 در فرمول محدوده "انتخاب_تصویر" هم برای تعیین عکس موردنظر انتخاب از گزینه ها استفاده شده است.
با انتخاب گزینه تصاویر(Option Button)، تصویر مربوطه در Shapes ایجاده شده در صفحه اکسل، نمایش داده می شود.
امیدوارم مطالب ارائه شده مورد توجه علاقه مندان اکسل قرار گرفته باشد.
