いわゆるこういうのを表示するサンプルコードです。
'**********************************************************************
' フォルダー制御
'**********************************************************************
'最後に選択したフォルダー
Private last_select_dir As String
'**********************************************************************
' フォルダー選択ダイアログ
' input : ini_dir = 初期表示フォルダー (空だと最後に開いたフォルダーになる)
' select_dir = [out] 選択したフォルダー
' return : 0 = 成功
' 1 = キャンセル
' note :
'**********************************************************************
Public Function SelectFolder(ini_dir As String, select_dir As String) As Integer
Dim ret As Integer
Dim dir As String
'初期表示フォルダーの設定
If ini_dir = "" Then
'初期表示フォルダーの指定なし > 前回開いたフォルダー
If last_select_dir = "" Then
'初回はExcelファイルのあるフォルダー
last_select_dir = ThisWorkbook.path
End If
dir = last_select_dir
Else
dir = ini_dir
End If
dir = dir + "\"
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "フォルダーを選択してください"
.ButtonName = "選択する"
.InitialFileName = dir
If .Show = True Then
ret = 0
select_dir = .SelectedItems(1)
last_select_dir = select_dir
Else
ret = 1
End If
End With
SelectFolder = ret
End Function
コメント