DoCmd.Close メソッド (Access)

Close メソッドは、Visual Basic で "Close/閉じる" アクションを実行します。

構文

expression.Close (ObjectType, ObjectName, Save)

expression: DoCmd オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
ObjectType 省略可能 AcObjectType 閉じるオブジェクトの種類を表す AcObjectType 定数。
ObjectName 省略可能 Variant 引数 ObjectType で指定した種類のオブジェクトの有効な名前の文字列式。
Save Optional AcCloseSave オブジェクトに加えた変更を保存するかどうかを指定する AcCloseSave 定数。 既定値は acSavePrompt です。

解説

Close メソッドを使用すると、指定した Access ウィンドウまたはアクティブ ウィンドウ (ウィンドウが指定されていない場合) を閉じることができます。

引数 ObjectType および ObjectName を空白の定数のままにすると (ObjectType は既定の定数 acDefault であることが前提)、アクティブ ウィンドウが閉じられます。 Save 引数を指定し、ObjectType 引数と ObjectName 引数を空白のままにする場合は、ObjectType 引数と ObjectName 引数のコンマを含める必要があります。

注:

フォームに必要なプロパティが [はい] に設定されているフィールドに連結されたコントロールがあり、そのフィールドにデータを入力せずに Close メソッドを使用してフォームを閉じた場合、エラーメッセージは表示されません。 レコードに加えた変更は中止されます。 ユーザー インターフェイスを使用してフォームを閉じると、警告が表示されます。

エラー メッセージを表示するには、Close メソッドを呼び出す前に、RunCommand メソッドを使って acCmdSaveRecord コマンドを呼び出します。 これにより、いずれかの必須フィールドが Null の場合に実行時エラーが発生します。 この方法を次の例に示します。

Private Sub cmdCloseForm_Click() 
On Error GoTo Err_cmdCloseForm_Click 
 
 DoCmd.RunCommand acCmdSaveRecord 
 DoCmd.Close 
 
Exit_cmdCloseForm_Click: 
 Exit Sub 
 
Err_cmdCloseForm_Click: 
 MsgBox Err.Description 
 Resume Exit_cmdCloseForm_Click 
 
End Sub

次の例では、Close メソッドを使用して、[受注] フォームを閉じ、メッセージを表示せずに変更を保存します。

DoCmd.Close acForm, "Order Review", acSaveYes

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

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