マクロ 77回
いつも同じ規定のフォルダからファイルを開く場合や、保存する場合は直接アドレスからのファイルネームで指定しますが、
フォルダを変更する場合もあるかもしれません。
今回は、ユーザがフォルダを選択するための“フォルダーの選択”ダイアログボックスを使う場合を紹介します。
1. ファイル ダイアログを開くには、Application.FileDialogプロパティを利用して FileDialog オブジェクトを取得します。

2. フォルダを選択するコードを記述してみましょう。
Sub フォルダーの選択()
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
MsgBox .SelectedItems(1)
End With
End Sub
3.マクロを実行すると、フォルダの選択画面が表示されます。

4. フォルダーを選択してOKを押すとMsgBoxにフォルダ名が表示されます。

5.ファイルを選択する場合は、コードの定数部分を msoFileDialogFilePickerに変更します。
Sub ファイルの選択()
With Application.FileDialog(msoFileDialogFilePicker)
.Show
MsgBox .SelectedItems(1)
End With
End Sub

ファイルを選択してOKをクリックすると、選択したファイル名がメッセージボックスに表示されます。

7. 複数ファイルを選択する場合は、コードに次の .AllowMultiSelect = Trueを追加します。
また、複数のファイル名を順番に表示するために、For~Nextステートメントをつかいます。
Sub 複数ファイルーの選択()
Dim fileCount As Long
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = True
.Show
For fileCount = 1 To .SelectedItems.Count
MsgBox .SelectedItems(fileCount)
Next fileCount
End With
End Sub
実行すると、ダイアログボックスで複数のファイルを選択することができます。

7. ファイルを2つ選択したので、最初の1つ目のファイル名がメッセージボックスに表示されました。

8. 2つ目のファイル名がメッセージボックスに表示されました。今回は以上です。
