[ Access-VBA ] フォームを開いて閉じる ( DoCmd.OpenForm Close )

Pocket

ここでは、Access VBA でフォームを開いて閉じるサンプルスクリプトを掲載しています。

スポンサーリンク

フォームを開いて閉じる

フォームを開いて閉じるだけのサンプルスクリプトになります。外部からフォームを開いて、外部からフォームを閉じています。

' フォーム名を指定してフォームを開く
DoCmd.OpenForm "フォーム1"

' フォームを保存して閉じる
DoCmd.Close acForm, "フォーム1", asSaveYes

もちろん、フォーム上に作成した「閉じる」ボタンからフォームを閉じることもできます。むしろ利用頻度はこちらのほうが高いと思います。

' フォーム上の閉じるボタンクリックイベントハンドラ
Private Sub cmdClose_Click()
    ' フォームを保存しないで閉じる
    DoCmd.Close acForm, Me.Name, acSaveNo
End Sub

DoCmd.Close パラメータ一覧

DoCmd.Close メソッドはフォームだけではなく、レポートなど様々なオブジェクトを扱うことができます。第1パラメータは種類、第2パラメータは名前、第3パラメータで保存の種類を指定します。

I/F : DoCmd.Close(ObjectType, ObjectName, Save)

ObjectType 一覧

名前 説明
acDatabaseProperties 11 Database プロパティ
acDefault -1
acDiagram 8 データベース ダイアグラム (Access プロジェクト)
acForm 2 フォーム
acFunction 10 関数
acMacro 4 マクロ
acModule 5 モジュール
acQuery 1 クエリ
acReport 3 レポート
acServerView 7 サーバー ビュー
acStoredProcedure 9 ストアド プロシージャ (Access プロジェクト)
acTable 0 テーブル
acTableDataMacro 12 データ マクロ

Save 一覧

名前 説明
acSaveNo 2 指定したオブジェクトは保存されません。
acSavePrompt 0 オブジェクトを保存するかどうかをユーザーに確認します。
※この値は、Visual Basic モジュールを閉じる場合は無視されます。モジュールは閉じられますが、モジュールへの変更内容は保存されません。
acSaveYes 1 指定したオブジェクトが保存されます。
参考
スポンサーリンク


Pocket

Leave a Comment

Your email address will not be published. Required fields are marked *