メニューフォームから検索フォームを開くなど、複数のフォームを使用する時に、VBAで開いたり、閉じたりするコードを掲載します。ここではボタンのクリックイベントで動作するようにします。
フォームを開くコマンド : DoCmd.OpenForm フォーム名
フォームを閉じるコマンド : DoCmd.Close acForm, フォーム名, acSaveNo か acSavePrompt か acSaveYes
■ メインフォームから開く
下のような、フォームにボタンを配置したフォームを作成しました。
この[サブフォームを開く]ボタンのクリックイベントに、VBAを入力します。
1.フォームをデザインビューにし、[サブフォームを開く]ボタンを選択します。
2.プロパティ シートを開き、[イベント]タブ~[クリック時]で、[イベント プロシージャ]を選択します。
3.右の[…]ボタンをクリックします。
VBE画面が開くので、下記のフォームを開くコードを入力します。
Option Compare Database
Private Sub コマンド0_Click()
DoCmd.OpenForm "サブフォーム"
End Sub
■ フォームを閉じる
別フォームを作成し、[閉じる]ボタンを配置します。
1.フォームをデザインビューにし、[閉じる]ボタンを選択します。
2.プロパティ シートを開き、[イベント]タブ~[クリック時]で、[イベント プロシージャ]を選択します。
3.右の[…]ボタンをクリックします。
VBE画面が開くので、下記のフォームを閉じるコードを入力します。
Option Compare Database
Private Sub コマンド0_Click()
DoCmd.Close
End Sub
■ フォームをVBAで開く/閉じる
1.メインフォームを開き[サブフォームを開く]ボタンをクリックします。 するとサブフォームが開きます。
2.サブフォームの[閉じる]ボタンをクリックします。 するとサブフォームが閉じます。