フォルダ選択のダイアログを表示

Excelにはフォルダを選択する組み込みダイログボックスがありません。Windows Scripting Host を使って表示してみましょう。

Sub フォルダ選択のダイアログを表示()
  Dim objA, objF
  Dim strFolder As String
  Set objA = CreateObject("Shell.Application")
  Set objF = objA.BrowseForFolder(0, "フォルダを選択してください", 0)
  If Not objF Is Nothing Then
    strFolder = objF.Items.Item.Path
  End If
  If strFolder = "" Then
    MsgBox "キャンセル"
  Else
    MsgBox strFolder
  End If
End Sub

選択したフォルダ内のファイルすべてを対象にしたい場合はこのようにして取得したフォルダ名を使います。