Împiedicați închiderea unui formular de utilizator atunci când utilizatorul face clic pe butonul x folosind VBA în Microsoft Excel

Anonim

În acest articol, vom arăta cum să dezactivați butonul x de pe forma de utilizator utilizând VBA.

În acest exemplu, am creat un formular de utilizator care poate fi activat făcând clic pe butonul Executare din foaia de lucru.

Acest formular de utilizator conține un singur buton care este utilizat pentru închiderea formularului de utilizator. Formularul de utilizator poate fi închis doar făcând clic pe acest buton. Chiar și, apăsând tasta de comandă rapidă Alt + F4 de pe tastatură nu veți putea închide acest formular de utilizator.

Explicație logică

Pentru dezactivarea butonului x al formei de utilizator, am folosit evenimentul de interogare a formularului de utilizator. Acest eveniment este declanșat înainte de închiderea formularului de utilizator.

În acest caz, am stabilit condiția ca, dacă modul de închidere este controlul meniului, atunci nu închideți forma de utilizator; în schimb, afișați un mesaj de informații în caseta de dialog.

Vă rugăm să urmați codul de mai jos

 Opțiune Explicit Sub rulare () UserForm1. Show End Sub 'Add below code in userform Private Sub CommandButton1_Click ()' Close the userform Unload Me End Sub Private Sub UserForm_QueryClose (Cancel As Integer, CloseMode As Integer) 'Using Query Close event of Userform' Comparând valoarea constantă a variabilei CloseMode „Dacă este egală cu constanta încorporată a meniului de control” Apoi împiedicați închiderea formei de utilizator și „Afișați caseta de dialog a mesajului de informații Dacă CloseMode = vbFormControlMenu Apoi„ Schimbarea valorii variabilei Cancel la True ”În mod implicit, este False Cancel = True MsgBox "Nu puteți închide dialogul astfel!" End If End Sub 

Dacă ți-a plăcut acest blog, distribuie-l prietenilor tăi de pe Facebook. De asemenea, ne puteți urmări pe Twitter și Facebook.

Ne-ar plăcea să aflăm de la dvs., să ne anunțați cum putem îmbunătăți munca noastră și o putem îmbunătăți. Scrieți-ne pe site-ul de e-mail