2015年3月14日土曜日

[MSAccess] 開いているテーブルを全て閉じる

Microsoft Access データシート ビューで開いているテーブル、クエリを閉じる方法です。以下は開いているテーブルを全て閉じるサンプルです。特定のテーブルだけ閉じるには、DoCmd.Close メソッドでテーブル名を引数で指定すればよい。

Table を閉じる場合
Dim AccObj As AccessObject
For Each AccObj In CurrentData.AllTables
  If AccObj.IsLoaded Then
    DoCmd.Close AcObjectType.acTable, AccObj.Name, AcCloseSave.acSaveNo
  End If
Next


Query を閉じる場合
For Each AccObj In CurrentData.AllQueries
  If AccObj.IsLoaded Then
    DoCmd.Close AcObjectType.acQuery, AccObj.Name, AcCloseSave.acSaveNo
  End If
Next


■ 参考資料

AllTables オブジェクト (Access)
https://msdn.microsoft.com/ja-jp/library/office/ff193974.aspx
データベースの開いているテーブルをすべて表示するには、AllTables コレクションの各 AccessObject オブジェクトの IsLoaded プロパティを使用します。