В этой статье мы покажем, как отключить кнопку x на форме пользователя с помощью VBA.

В этом примере мы создали пользовательскую форму, которую можно активировать, нажав кнопку запуска на рабочем листе.

ArrowRawSheet

Эта пользовательская форма содержит только одну кнопку, которая используется для закрытия пользовательской формы. Пользовательскую форму можно закрыть, только нажав на эту кнопку. Даже нажатие сочетания клавиш Alt + F4 на клавиатуре не сможет закрыть эту пользовательскую форму.

ArrowCloseForm

Логическое объяснение

Для отключения кнопки x пользовательской формы мы использовали событие закрытия запроса пользовательской формы. Это событие запускается перед закрытием пользовательской формы.

В этом случае мы установили условие, что если режим закрытия — это управление меню, то не закрывать пользовательскую форму; вместо этого отобразите информационное сообщение в диалоговом окне.

ArrowClickXButton

Пожалуйста, введите код ниже

Option Explicit

Sub running()

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

'Comparing the constant value of CloseMode variable

'If it is equal to inbuilt constant of control menu

'Then prevent closing of userform and

'Display information message dialog box

If CloseMode = vbFormControlMenu Then



'Changing Cancel variable value to True

'By default, it is False

Cancel = True

MsgBox "You can't close the dialog like this!"

End If

End Sub

Если вам понравился этот блог, поделитесь им с друзьями на Facebook и Facebook.

Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить нашу работу и сделать ее лучше для вас. Напишите нам на [email protected]