- ACCESS
-
2012-03-19 - 更新:2022-09-24
ACCESSからオートメーションでExcelを開き、WorkbooksのReadOnlyプロパティを取得して現在開かれているかどうかを判別します。
まずは変数を宣言
Dim xlApp As Object Dim xlBook As Object Dim FileName As String
ファイルを指定します。
Environ("USERPROFILE")はWindowsの環境変数でC:\Users\ユーザー名というパスを返します。
FileName = Environ("USERPROFILE") & "\デスクトップ\sample.xls"
Excelのオートメーションオブジェクトを作成します。
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(FileName)
開かれたワークブックのReadOnlyプロパティがtrueなら誰かがそのファイルを開いている、ということになります。
If xlBook.ReadOnly Then
MsgBox "開いています。"
Else
MsgBox "開いていません。"
End If
ワークブックを閉じてExcelを終了します。
xlBook.Close xlApp.Application.Quit
最後にオブジェクトの破棄も忘れずに
Set xlBook = Nothing Set xlApp = Nothing
39,297 views




