VBA/TIPS

Excelからファイルダイアログを開いてファイルやフォルダのパスを表示するにはApplicationオブジェクトのFileDialogプロパティを使う。

ファイルを選択

以下は複数のファイルを選択した場合の例である。
複数のファイルが選択されている場合は、SelectedItemsコレクションにデータが入っているのでループで回せば取得できる。

Sub ボタン1_Click()
    Dim i As Long

    With Application.FileDialog(msoFileDialogOpen)
        '複数選択を可能にする場合
        .AllowMultiSelect = True

        .Title = "ファイルを選択してください"

        'ダイアログを表示
        If .Show = -1 Then
           '選択されたファイルを表示
           For i = 1 To .SelectedItems.Count
               ActiveSheet.Cells(4 + i, 1) = .SelectedItems(i)
           Next i
        End If

    End With

End Sub

msoFileDialogFilePicker.PNG

フォルダを選択

Sub ボタン2_Click()
    Dim i As Long

    With Application.FileDialog(msoFileDialogFolderPicker)
        'ダイアログを表示
        If .Show = -1 Then
            '選択されたファイルを表示
            ActiveSheet.Cells(5, 1) = .SelectedItems(1)
        End If

    End With

End Sub

msoFileDialogFolderPicker.PNG

ファイルを開く

Sub ボタン3_Click()
    Dim i As Long

    With Application.FileDialog(msoFileDialogOpen)
        '開くボタンが押された場合
        If .Show = -1 Then
            .Execute
        End If

    End With

End Sub

msoFileDialogOpen.PNG

ファイルを保存する

Sub ボタン4_Click()
    Dim i As Long

    With Application.FileDialog(msoFileDialogSaveAs)
        '開くボタンが押された場合
        If .Show = -1 Then
            .Execute
        End If

    End With

End Sub

msoFileDialogSaveAs.PNG

ダイアログに指定できる定数

ダイアログの定数に指定できる値は以下のとおり。

fileDialogType説明
msoFileDialogFilePickerファイル選択表示
msoFileDialogFolderPickerフォルダー選択表示
msoFileDialogOpenファイルを開く表示
msoFileDialogSaveAsファイルを保存の表示

参考リンク


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
目次
ダブルクリックで閉じるTOP | 閉じる
GO TO TOP