社内SEの徒然なる日記

Excelマクロでファイルやフォルダを選択 №4 ファイル参照(複数ファイル)

■ 複数のファイルの取得

今回は、FileDialogオブジェクトを使用して複数のファイルを参照してみました。


'カウンタ
Dim i As Integer

With Application.FileDialog(msoFileDialogFilePicker)

'複数のファイルを取得します
.AllowMultiSelect = True

'ダイアログを表示します。
If .Show = True Then

'選択したフォルダパスを表示
For i = 1 To .SelectedItems.Count
MsgBox .SelectedItems.Item(i)
Next
End If
End With


複数のファイル取得をする場合は、AllowMultiSelectプロパティを有効(True)にします。その状態でShowメソッドを実行すると、複数選択が可能なウィンドウが表示されます。
Excelファイルフォルダ選択4_1

選択したファイルの数は、SelectedItemsプロパティ(FileDialogSelectedItems)のcountプロパティで取得できます。上のサンプルでは、それを利用して選択したファイルパスをfor文を使用して連続表示しています。

■ 補足

当然の話なのですが、複数ファイル取得のプロパティ「AllowMultiSelect」は“複数のファイルを選択する処理”でしか使用できません。

つまり、今回使用したmsoFileDialogFilePicker(ファイル参照)とmsoFileDialogOpen(ファイルオープン)だけで有効になります。msoFileDialogSaveAs(ファイル保存)、msoFileDialogFolderPicker(フォルダ参照)の場合、複数選択は出来ませんでした。

msoFileDialogSaveAs(ファイル保存)は分るのですが、msoFileDialogFolderPicker(フォルダ参照)で複数のフォルダを選択は出来ても良さそうな気がしますけどね。

前回:Excelマクロでファイルやフォルダを選択 №3 ファイル参照(初期値)
次回:Excelマクロでファイルやフォルダを選択 №5 参照と開くの違い
目次:目次

--- blog end ---

スポンサードリンク

PageTop

コメント


管理者にだけ表示を許可する