Form.Unload イベント (Access)

Unload イベントは、フォームを閉じた後、フォームが画面に表示されなくなる前に発生します。 フォームが再び読み込まれると、フォームが表示され、フォームに配置されているすべてのコントロールの内容が初期化されます。

構文

アンロード (キャンセル)

expressionForm オブジェクトを表す変数です。

パラメーター

名前 必須 / オプション データ型 説明
Cancel 必須 Integer True に設定すると、Unload イベントが取り消されます。

注釈

このイベントが発生したときに、マクロまたはイベント プロシージャを実行するには、"OnUnload/読み込み解除時" プロパティをマクロ名または "[Event Procedure]"/"[イベント プロシージャ]" に設定します。

Unload イベントは、次のいずれかの操作を行ったときに発生します。

  • フォームを閉じたとき。
  • マクロで "Close/閉じる" アクションを実行したとき。
  • アプリケーションのタスク バー ボタンを右クリックし、[ 閉じる] を選択してアプリケーションを終了します。
  • アプリケーションの実行中に Windows を終了したとき。

フォームの Unload イベントが発生したときにマクロやイベント プロシージャを実行すると、フォームを閉じてよいかどうかを確認したり、フォームを閉じるときに実行するアクションを指定したりできます。 また、他のフォームを開いたり、フォームを使用したユーザーの名前を入力させるダイアログ ボックスを表示したりできます。

フォームを閉じると、次の順序でイベントが発生します。

UnloadDeactivateClose

Unload イベントは、 Close イベントの前に発生します。 Unload イベントはキャンセルできますが、 Close イベントはキャンセルできません。

注:

DeactivateLostFocus などの Unload イベントに関連するイベントのマクロまたはイベント プロシージャを作成する場合は、競合しないことを確認します (たとえば、別のマクロやプロシージャで取り消されたマクロやプロシージャで何かが発生しないようにする)、カスケード イベントが発生しないようにします。

次の使用例では、フォームを閉じるかどうかを確認するメッセージを表示します。

次の使用例の実行結果を確認するには、フォームに対し、次のイベント プロシージャを追加します。 フォーム ビューでフォームを閉じてダイアログ ボックスを表示し、[ はい ] または [いいえ] を選択します。

Private Sub Form_Unload(Cancel As Integer) 
 If MsgBox("Close form?", vbYesNo) = vbYes Then 
 Exit Sub 
 Else 
 Cancel = True 
 End If 
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。