VBAでファイルパスを取得する

VBA
この記事は約2分で読めます。

VBAでファイルパスを取得して何らかの処理を行いたいときがあります。

GetOpenFileNameを利用することにより、任意のファイルのパスを取得することができます。
Application.GetOpenFilename メソッド (Excel)


C:\GetOpenFileNameTestに4つのファイルを置きました。
各ファイルのパスを取得して、Sheet1のB2セルからB5セルまで記入してみます。

ファイルのパスを取得するGetFilePath関数です。

GetFilePathの引数に渡す文字列を変更することによって特定のファイル拡張子のみ
ファイル選択画面に表示することができます。

GetFilePathを以下のコードでテストしてみます。

TestGetFilePathの拡張子を指定しないコードが実行されます。
すべてのファイル(*.*)と表示されますので、test.txtを選択してみます。

Excelファイルの拡張子を指定したコードが実行されます。
Excelファイルのみ選択画面に表示されるので、test.xlsxを選択します。

Accessファイルの拡張子を指定したコードが実行されます。
Accessファイルのみ選択画面に表示されるので、test.accdbを選択します。

CSV・TSVファイルの拡張子を指定したコードが実行されます。
CSV・TSVファイルのみ選択画面に表示されるので、test.csvを選択します。

各ファイルのパスを取得し、Sheet1のB2セルからB5セルに表示できました。

コメント