[ VBA ] ファイル選択ダイアログを出力する ( Application.GetOpenFilename )

Pocket

ここでは、VBA において、ファイル選択ダイアログを出力してファイルを選択するサンプルスクリプトを掲載しています。

スポンサーリンク

ファイル選択ダイアログを出力する

ファイル選択ダイアログを出力してファイルを選択するサンプルスクリプトです。詳細はサンプル内のコメントを参照ください。

Private Sub CommandButton1_Click()

    ' 選択されたファイルパスを格納
    Dim FileName As Variant

    ' ファイル選択ダイアログを出力しcsvファイルを選択する
    FileName = Application.GetOpenFilename( _
                        FileFilter:="csv File (*.csv), *.csv", _
                        Title:="ファイルを指定してください", _
                        MultiSelect:=False) '複数ファイル選択無効

    ' キャンセルや閉じる(×)ボタンがクリックされたか確認
    If FileName = False Then
        ' ファイルが選択されなかった場合
        MsgBox "ファイルが選択されていません", vbInformation, "確認"
        Exit Sub
    End If
    
    ' ファイルの存在確認
    If Dir(FileName) = "" Then
        ' 無駄なチェックと思われる
        MsgBox "指定されたファイルが見つかりません", vbInformation, "確認"
        Exit Sub
    End If

    ' 選択したファイルのフルパスを出力する
    ' なお、複数ファイルの選択を有効とした場合には、
    ' 配列で返される
    MsgBox FileName
    
End Sub

なお、CSVファイルのみだけではなく、複数の拡張子からファイルを選択する場合は、上記サンプル内の Application.GetOpenFilename メソッドの FileFilter パラメータに設定する文字列を次のようにセミコロン(;)で区切って指定します。


    FileFilter:="CSV または Excel ファイル (*.csv;*.xlsx),*.csv;*.xlsx"

 

スポンサーリンク


Pocket

Leave a Comment

Your email address will not be published. Required fields are marked *