مخفی کردن اکسل در زمان نمایش یوزرفرم

1,475
بدون دیدگاه
مخفی کردن اکسل در زمان نمایش یوزر فرم

گاهی اوقات برنامه هایی با اکسل میسازیم که بیشتر تعامل کاربر با آن از طریق یوزفرم (UserForm) هایی است که طراحی کرده ایم و از خود اکسل فقط برای جمع آوری داده استفاده می کنیم. در این مواقع بهتر است خود برنامه اکسل را مخفی کرده و تنها از طریق یوزرفرم ها با کاربر تعامل داشت. در ادامه روشی ساده برای مخفی کردن اکسل در زمان نمایش یوزرفرم ها بیان می شود.

کد مخفی کردن برنامه اکسل

جهت مخفی کردن برنامه اکسل از کدنویسی استفاده می شود. برای اینکار فایل اکسل خود را باز کنید و با استفاده از کلیدهای ترکیبی Alt +F11 وارد محیط VBA شوید. سپس همانند تصویر از کادر Project در سمت چپ محیط VBA بر روی گزینه ThisWorkbook دوبار کلیک کنید تا محیط کد نویسی آن باز شود.

محیط Thisworkbook در Vba

حال کد های ذیل را در این قسمت وارد نمایید:

Sheet1.ir

Private Sub Workbook_Open()
    '============= Sheet1.ir ============
    'مخفي کردن برنامه اکسل
    Application.ActiveWindow.Application.Visible = False
    'نمايش يوزر فرم
    UF_My_Form.Show
End Sub

Sheet1.ir

نتیجه همانند تصویر ذیل خواهد بود. دقت نمایید که در خط 6 بجای UF_My_Form نام یوزرفرم خود را وارد نمایید.

کد مخفی کردن اکسل در زمان نمایش یوزر فرم

با اجرای این کد در زمان باز شدن اکسل، برنامه اکسل مخفی شده و تنها یوزرفرم به کاربر نشان داده می شود. حال باید کاری کنیم که با بستن یوزرفرم توسط کاربر، برنامه اکسل نیز ذخیره و بسته شود. برای این کار روی نام یوزرفرم کلیک راست کرده و گزینه View Code را انتخاب و کدهای ذیل را وارد نمایید.

Sheet1.ir

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    '============== sheet1.ir ================
    ' ذخیره کردن برنامه اکسل
    ActiveWorkbook.Save
    ' بستن برنامه اکسل
    Application.Quit
End Sub

Sheet1.ir

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

درصورتی که تمایل دارید اختیار نمایش یا عدم نمایش برنامه اکسل را به خود کاربر بدهید می توانید یک دکمه بر روی فرم ایجاد کرده و در رویداد (event) آن از کدهای ذیل استفاده کنید:

Sheet1.ir

Private Sub CommandButton1_Click()
    '============= Sheet1.ir ============
    'نمایش برنامه اکسل
    Application.ActiveWindow.Application.Visible = True
    'پنهان کردن يوزر فرم
    UF_My_Form.Hide
End Sub

Sheet1.ir

باز دقت نمایید که در خط 6 بجای UF_My_Form نام یوزرفرم خود را وارد کنید. تمام کاری که باید برای مخفی کردن اکسل در زمان نمایش یوزرفرم  انجام می دادیم همین بود. در ویدیو ذیل می توانید نتیجه کار را ببینید.

مطالب مرتبط :

دیدگاهتان را بنویسید

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

این قسمت نباید خالی باشد
این قسمت نباید خالی باشد
لطفاً یک نشانی ایمیل معتبر بنویسید.
شما برای ادامه باید با شرایط موافقت کنید

حداکثر حجم مجاز فایل : 5 مگابایت فرمت های مجاز : jpeg - jpg - png - pdf- xls - xlsx - xlsb - xlsm - txt - csv - zip - rar فایل ها را اینجا بکشید

keyboard_arrow_up