1-9 フォームの表示・非表示を確認するユーザーフォーム 2021.11.16
フォームの表示・非表示の確認には、Visibleプロパティを用います。
フォームを2つ挿入して、確認してみましょう。
次のコード「Form_Show_Modal」を実行すると、2つのフォームが表示されます。
フォーム1をクリックするとフォーム2の表示状態を確認し、表示なら「True」、非表示なら「False」をメッセージで表示します。またフォーム2が非表示の場合は表示します。
フォーム2をクリックするとフォーム2は非表示になります。
サンプルコード
【UserForm1】
Private Sub UserForm_Click() MsgBox UserForm2.Visible 'フォーム2の表示・非表示を確認 If UserForm2.Visible = False Then UserForm2.Show vbModeless '非表示の場合は表示 End If End Sub
【UserForm2】
Private Sub UserForm_Click() Me.Hide '自身(フォーム2)を非表示 End Sub
【標準モジュール】
Sub Form_Show_Modeless() UserForm1.Show vbModeless 'フォーム1をモードレス表示 UserForm2.Show vbModeless 'フォーム2をモードレス表示 End Sub

フォームのVisibleプロパティは、取得のみ可能で設定はできません。