ExcelVBA ファイルやフォルダを開く|現在場所基準にパス指定する方法

 

Excel VBA ファイルやフォルダを開く際に、現在のブックの保存場所を基準にパスを指定する方法。 使い方や注意点など、サンプルコードをもとに具体的に解説します。

 

Excel VBA 現在の場所基準にパス指定|シーン

以下のシーンで利用します。

1.他の人とファイルを共有する場合に、フォルダ構成が変わっても動作する

2.ファイルを移動しても、パスを修正せずにマクロを動作させたい

 

Excel VBA 現在の場所基準にパス指定サンプルコード

ThisWorkbook.Path を利用すると、現在のブックがあるフォルダを取得できる。

現在のブックと同じフォルダの「data.xlsx」を開く

Option Explicit

Sub OpenRelativeFile()
    Dim filePath As String
    filePath = ThisWorkbook.Path & "\data.xlsx" ' 相対パスで指定
    If Dir(filePath) <> "" Then
        Workbooks.Open filePath
    Else
        MsgBox "ファイルが見つかりません", vbExclamation
    End If
End Sub

・ThisWorkbook.Path は最後に \(バックスラッシュ)がつかないため、手動で追加する必要があります。

 

Excel VBA 現在の場所基準にパス指定まとめ

・ThisWorkbook.Path

・\ を手動で追加

 

「日頃から本サイトを閲覧いただいているお客様だけに、
【無料】EXCEL VBA コードショートカット集をご紹介させていただきます。
きっと気に入っていただけると思います」

👉 無料:ExcelVBAコード・ショートカット集