Excelワークシートに入力するユーザーフォームがありますが、ブックの下部にあるタブを表示できます。ユーザーフォームを開いているときにユーザーがタブの1つをクリックしても、何も起こりません。ユーザーがフォームの一部ではないものをクリックするたびにユーザーフォームをアンロードする方法はありますか?
ありがとう
これが1つの方法ですが、実際にどれだけうまく機能するかについては少し懐疑的です。まず、ユーザーフォームのShowModalプロパティをFalseに設定します。これにより、ユーザーはユーザーフォームの外側をクリックして、実際に何かを選択できるようになります。
次に、このコードをThisWorkbookモジュールに配置します
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
On Error Resume Next
Unload UserForm1
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
Unload UserForm1
End Sub
ユーザーがアクティブなシートのシートタブまたはセルをクリックすると、ユーザーフォームがアンロードされます。ユーザーがクリックできる場所は他にも100ありますが、これらのイベントは発生しませんが、状況に応じて機能する可能性があります。