ファイルやフォルダを選択するダイアログボックスを表示する方法の一つにFileDialogプロパティを使用する方法があります。
Application.FileDialog(定数)
引数にダイアログボックスの種類を表す定数を指定して、Showメソッドを使用します。
定数 | 数値 | 説明 |
---|---|---|
msoFileDialogFilePicker | 3 | ファイルを選択する |
msoFileDialogFolderPicker | 4 | フォルダーを選択する |
msoFileDialogOpen | 1 | ファイルを開く |
msoFileDialogSaveAs | 2 | ファイルを保存する |
ダイアログボックスでファイルを選択するサンプルコードです。
Sub ShowFileDialogFilePicker()
With Application.FileDialog(msoFileDialogFilePicker)
If .Show Then
MsgBox .SelectedItems(1)
End If
End With
End Sub
サンプルコードを実行するとファイルを選択できるダイアログボックスが表示され、ファイル選択後[OK]ボタンをクリックするとファイルパスが表示されます。
実行結果 |
---|
以下のサンプルコードではダイアログボックスを表示してフォルダを選択しフォルダパスを表示します。
Sub ShowFileDialogFolderPicker()
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show Then
MsgBox .SelectedItems(1)
End If
End With
End Sub
実行結果 |
---|
FileDialogには以下のプロパティがあり用途に応じて使用します。
プロパティ | 説明 |
---|---|
AllowMultiSelect | 複数のファイルまたはフォルダを選択できるようにします |
ButtonName | ファイルダイアログボックスのアクションボタンに表示されるテキスト |
DialogType | MsoFileDialogTypeを変更します |
Filter | ユーザーが選択できるファイルタイプをフィルタリングするようにファイルフィルターを指定します |
InitialFileName | 開かれる最初のパス(例: C:\) |
InitialView | ファイル ダイアログ ボックスでユーザーに表示されるビューを以下お定数で指定します
|
SelectedItems | 選択したすべてのアイテムを含むタイプFileDialogSelectedItemsのコレクション |
Title | [ファイルを開く]ダイアログウィンドウのタイトルを指定します |
以下のサンプルコードではプロパティにより複数ファイル選択可にしてフィルターに"Excelファイル(.xlsx)"を追加してダイアログボックスを表示します。
Sub ShowFileDialogFilePicker()
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = True
.Filters.Clear
.Filters.Add "Excelファイル(.xlsx)", "*.xlsx"
If .Show Then
For Each v In .SelectedItems
MsgBox v
Next v
End If
End With
End Sub
ダイアログボックス |
---|
InitialViewプロパティには以下の定数を指定することができます。
名前 | 数値 | 説昁E/th> |
---|---|---|
msoFileDialogViewDetails | 2 | ファイルはリスト形式で詳細情報と共に表示されます |
msoFileDialogViewLargeIcons | 6 | ファイルは大きいアイコンで表示されます |
msoFileDialogViewList | 1 | ファイルはリスト形式で詳細なしで表示されます |
msoFileDialogViewPreview | 4 | ファイルは選択したファイルを示すプレビュー ウィンドウと共に表示されます |
msoFileDialogViewProperties | 3 | ファイルはリスト形式で選択したファイルのプロパティを示すウィンドウと共に表示されます |
msoFileDialogViewSmallIcons | 7 | ファイルは小さいアイコンで表示されます |
msoFileDialogViewThumbnail | 5 | ファイルは縮小表示で表示されます |
msoFileDialogViewTiles | 9 | ファイルは並べられたアイコンで表示されます |
msoFileDialogViewWebView | 8 | Web ビューに表示されるファイル |