- 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