【VBA】ダイアログで選択したフォルダのパスをセルに入力する


アクティブセルにダイアログで選択したフォルダのパスを入力できるようにする

フォルダパスを入力したいセルを選択して
「フォルダパスを選んで入力」ボタンを押すとダイアログが表示され
選択したフォルダのパスが入力されるようにします。

Private Sub btnFldSelect_Click()
    Dim TargetRange As Range '入力対象のアクティブセル格納用
    Set TargetRange = ActiveCell 'アクティブセルを変数に格納
    Dim TargetFldName As String '選択したフォルダパス格納用

    'ダイアフォルダグ表示
    Application.FileDialog(msoFileDialogFolderPicker).Title = "パスを入力したいフォルダを選んでね" 'ダイアログタイトル
    If Application.FileDialog(msoFileDialogFolderPicker).Show = True Then 'フォルダを選んでダイアログOK押下
       TargetFldName = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) '選択したフォルダのパスを格納
       TargetRange.Value = TargetFldName 'アクティブセルにフォルダパスを入力
    End If
End Sub

【実行結果】

ワタシ流こだわり

なくてもいけるけど、RangeやCellsに値入力するときは.Valueを必ずつけます。