防止ユーザーがMicrosoft ExcelでVBAを使用することにより、Xボタンをクリックしたときに閉じてからユーザーフォーム
この記事では、VBAを使用してユーザーフォームのxボタンを無効にする方法を示します。
この例では、ワークシートの実行ボタンをクリックしてアクティブ化できるユーザーフォームを作成しました。
このユーザーフォームには、ユーザーフォームを閉じるために使用されるボタンが1つだけ含まれています。このボタンをクリックするだけでユーザーフォームを閉じることができます。キーボードのショートカットキーAlt + F4を押しても、このユーザーフォームを閉じることはできません。
ロジックの説明
ユーザーフォームのxボタンを無効にするために、ユーザーフォームのクエリ終了イベントを使用しました。このイベントは、ユーザーフォームを閉じる前に発生します。
この場合、閉じるモードがメニューコントロールの場合、ユーザーフォームを閉じないという条件を設定しました。代わりに、ダイアログボックスに情報メッセージを表示します。
コードについては以下に従ってください
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]までご連絡ください