ファイル選択ダイアログの表示方法について紹介します。ファイル選択ダイアログとは、以下のようなダイヤログです。
Application.GetOpenFilenameで解決する
非常に簡単です。Application.GetOpenFilenameをコールするだけとなります。戻り値には選択したファイルのフルパス名が設定されます。キャンセルボタンが押された場合は、Falseが戻り値に設定されます。
複数ファイルを選択したい場合は、第5引数にTrueを設定してください。注意点としては、戻り値は配列になる点です。詳細はサンプルプログラムを確認してください。
拡張子で絞り込みたい、最初に表示されるフォルダを変更したい場合については、以下記事を参考にしてみてください。もう少し詳しく書いています。
サンプルプログラム(コピペでOK)
Option Explicit
Sub sample()
Dim fName As Variant
fName = Application.GetOpenFilename ' 戻り値はフルパス名です
Debug.Print fName ' C:\Windows\winhlp32.exe
fName = Application.GetOpenFilename(, , , , True) ' 複数ファイル選択する場合は、第5引数にTrueを設定
' 戻り値は配列になるので注意
Dim i As Long
i = UBound(fName)
For i = LBound(fName) To UBound(fName)
Debug.Print i & ": " & fName(i)
Next
fName = Application.GetOpenFilename ' キャンセルの戻り値はFalseです
Debug.Print fName ' False
End Sub