فروشگاه
انبارداری پیشرفته تحت اکسل

غیر فعال کردن دکمه بستن در یوزر فرم اکسل

غیر فعال کردن دکمه بستن در یوزر فرم اکسل خیلی وقتها میشه که ما یک برنامه‌ای طراحی کردیم تحت اکسل بعد از آن می خواهیم در یوزر فرم دکمه بستن یا همان دکمه Close بالا غیر فعال بشه و فقط کاربر بتواند اون دکمه که ما قرار داریم برای بستن فرم از آن استفاده کند  برای این منظور آموزش بالا را به صورت کامل مشاهده فرمایید کدی که در قسمت پایین براتون قرار دادم را به صورت کامل مطابق  با آموزش وارد محیط کد نویسی ویژوال بیسیک اکسل شوید و کد مربوطه را در قسمت گفته شده قرار بدهید

غیر فعال کردن دکمه بستن در یوزر فرم اکسل

غیر فعال کردن دکمه بستن در یوزر فرم اکسل

غیر فعال کردن دکمه بستن در یوزر فرم اکسل

آموزش های پیشنهادی برای شما

قبل از هر کاری آموزش زیر را مشاهده فرمایید👇

نحوه ذخیره فایل اکسل حاوی ماکرو

آموزش فعال کردن ماکرو اکسل

نحوه ورود به محیط vba اکسل با 3 روش

پیشنهاد آکادمی روح الله برای شما 

بانک کد VBA در اکسل

آموزش رایگان اکسل

در اکسل حرفه ای شوید روح الله

دوره های جامع اکسل

فایل های آماده اکسل

برای وارد شدن در محیط کد نویسی vba اکسل می توانید از روش های خیلی زیادی استفاده کنید یک آموزش به صورت کامل برای نحوه وارد شدن در محیط کد نویسی vba در اکسل به صورت کامل آموزش دادیم و روی سایت موجود هستند این  لینک شاه قرار میدم پایین همین صفحه میتونید وارد اون آموزش بشید  و روشهای وارد شدن در محیط ویژوال بیسیک اکسل را به صورت کامل یاد بگیرید

پیش نهاد آکادمی روح الله برای شما :
حذف داده‌های تکراری اکسل با کد VBA با 4 روش

برای وارد شدن در محیط کد نویسی اکسل ساده ترین روش  با فشردن دکمه Alt + F11 وارد ویرایشگر VBA  اکسل شوید.  با این روش میتونیم به راحتی وارد محیط ویژوال بیسیک شوید

 

در آخر این هم بود از آموزش غیر فعال کردن دکمه بستن در یوزر فرم اکسل

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

میانگین رتبه 4/5 تعداد رای : 4
اکسل را حرفه ای یاد بگیر
نظر شما در مورد این مقاله چیست؟

نظر یا سوال شما در این مورد چیست؟

سلام دوست عزیز خوشحال میشوم نظر شما را در مورد این مقاله بدانم 👇

    رامین قنبری

    پنهان کردن کلوز یا ضربدر روی فرم چونگه است

    پاسخ

      سلام ارادت خدمت شما دوست عزیز برای این کار

      نکته مهم (اول بخون)

      در VBA به‌صورت مستقیم گزینه‌ای برای مخفی‌کردن ضربدر (❌ Close) یوزرفرم وجود ندارد
      اما با یک ترفند حرفه‌ای از Windows API می‌شود این کار را انجام داد ✔️
      روی ویندوز ۷ و ۱۰ هم جواب می‌دهد.

      ✅ روش حرفه‌ای مخفی کردن دکمه ضربدر یوزرفرم
      1️⃣ کد API (یک‌بار اضافه کن)

      داخل Module این کد را قرار بده:

      #If VBA7 Then
      Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" _
      (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPtr
      Private Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
      (ByVal hWnd As LongPtr, ByVal nIndex As Long) As Long
      Private Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
      (ByVal hWnd As LongPtr, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
      #Else
      Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
      (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
      Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
      (ByVal hWnd As Long, ByVal nIndex As Long) As Long
      Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
      (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
      #End If

      Public Const GWL_STYLE = -16
      Public Const WS_SYSMENU = &H80000

      2️⃣ کد داخل یوزرفرم

      در UserForm و رویداد Initialize بنویس:

      Private Sub UserForm_Initialize()

      Dim hWndForm As LongPtr
      Dim style As Long

      hWndForm = FindWindow(vbNullString, Me.Caption)

      If hWndForm <> 0 Then
      style = GetWindowLong(hWndForm, GWL_STYLE)
      style = style And Not WS_SYSMENU
      SetWindowLong hWndForm, GWL_STYLE, style
      End If

      End Sub

      ✅ بعد از اجرا، دکمه ❌ کاملاً حذف می‌شود.

      🧠 پیشنهاد حرفه‌ای

      وقتی ضربدر را حذف می‌کنی حتماً:

      یک دکمه خروج یا بازگشت روی فرم بگذار

      خروج را کنترل‌شده انجام بده

      مثلاً:

      Private Sub cmdExit_Click()
      Unload Me
      End Sub


      ⚠️ نکات مهم

      Caption یوزرفرم نباید خالی باشد

      اگر نام فرم تغییر کند مشکلی نیست، Caption ملاک است

      روی Excel 32bit و 64bit سازگار

      پاسخ