【VBA】VBAでExcelファイル(ブック)を開く方法
こちらのWebサイトは移転しました。
VBAを使えば、Excelファイル(ブック)を自動で開いてデータを読み込むこともできます。
今回はVBAでブックを開く方法をご紹介いたします。
ブックを開く方法
WorkbookオブジェクトのOpenメソッドを使うことで、指定したファイル名のブックを開くことができます。
次のコードは、 "SampleFile.xlsx" を開きます。
Sub Sample() Workbooks.Open "C:\SampleFile.xlsx" 'ブックを開く End Sub
ファイル名は拡張子まで含めた絶対パスで指定します。
ファイルチェックをしてブックを開く
ブックを開く際、対象となるファイルが存在しなかったり、既にブックを開いている場合はエラーとなります。
そこでファイルの存在チェックと、ブックが既に開いていないかの確認をして、ブックを開く必要があります。
以下は関数化してあるので、Call openFile("ファイルパス") でブックを開くことができます。
' ----- メイン関数 ----- Sub Main() Call openFile("C:\SampleFile.xlsx"") End Sub ' ----- ファイルを開く関数 ----- Function openFile(Target As String) 'ファイルパスを引数 Dim buf As String Dim wb As Workbook '----- ファイルの存在チェック buf = Dir(Target) If buf = "" Then MsgBox Target & vbCrLf & "は存在しません", vbExclamation 'メッセージボックスで通知 Exit Function '存在しない場合は関数終了 End If '----- 同名ブックのチェック For Each wb In Workbooks '開いている全Workbookを確認するループ If wb.name = buf Then MsgBox buf & vbCrLf & "はすでに開いています", vbExclamation 'メッセージボックスで通知 Exit Function '既に開いている場合は関数終了 End If Next wb '----- ブックを開く Workbooks.Open Target End Function