VBA フォルダを選択して配下のファイルを拡張子を指定して出力する

  • 作成日 2022.07.16
  • vba
VBA フォルダを選択して配下のファイルを拡張子を指定して出力する

VBAで、フォルダを選択して配下のファイルを拡張子を指定して出力する表示コードを記述してます。

環境

  • OS windows10 64bit

拡張子を指定して出力

拡張子を指定して出力するには、「Like」を使用します。

実際に適当なボタンを用意して、ダイヤログで選択したフォルダ配下にあるファイルで拡張子が「txt」のものだけを、全てセルに表示する
以下のソースコードを記述します。

Private Sub CommandButton1_Click()

    Dim strFolderPath As String
    Dim strFileName As String
    
    Dim lngIndex As Long
    
    Dim objFSO  As Object
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    
    Dim Files As Object
    Dim File As Object
    
    ' ダイヤログ
    With Application.FileDialog(msoFileDialogFolderPicker)
    
        ' 複数選択不可
        .AllowMultiSelect = False
    
        If .Show <> 0 Then
        
            ' フォルダパスを取得
            strFolderPath = .SelectedItems(1)
        
        End If
    
    End With
    
    ' ファイルを全て取得
    Set Files = objFSO.GetFolder(strFolderPath)
    
    For Each File In Files.Files

        lngIndex = lngIndex + 1
        
        ' 拡張子がテキストのものだけ出力
        If File.Name Like "*.txt" Then
            Cells(lngIndex, 1).Value = File
        End If

    Next File

End Sub

フォルダ内構成

実行してみます。

表示されていることが確認できます。