Sub Sample() Dim myChkBook As Workbook On Error GoTo ErrHdl Set myChkBook = Workbooks("Test.xls") MsgBox "開かれています。" Exit Sub ErrHdl: MsgBox "開かれていません。" End Sub
■ファンクション化する場合
・ファンクションプロシージャ
Function sameNameBookOpenCheck(targetPath As String) As Boolean '-------------------------------------------------------- '機能:指定したファイル名のブックが開かれているか確認し ' 結果をTrueかFalseで返す '引数1:指定するファイル名 '-------------------------------------------------------- Dim ChkBook As Workbook On Error GoTo ErrHdl Set ChkBook = Workbooks(targetPath) sameNameBookOpenCheck = True Exit Function ErrHdl: sameNameBookOpenCheck = False End Function
・呼び出し元プロシージャ
Sub Sample() Dim myPath As String myPath = "Test.xlsx" If sameNameBookOpenCheck(myPath) Then MsgBox "フックは開かれています" Else MsgBox "ブックは閉じています" End If End Sub