多数のCSVファイルをまとめて1シートごとに読み込む マクロ講座動画解説 Excel

多数のCSVファイルをまとめて1シートごとに読み込む

マクロ講座57回CSV
マクロ講座57多数のCSVファイルをまとめて1シートごとに読み込む

動画でExcel マクロ講座57回CSV

多数のCSVファイルをまとめて1シートごとに読み込む

動画版「マクロ講座」です。
今回は複数のあるいは多数の CSV ファイルをまとめて1シートごとに読み込むというマクロを作成します。
CSV ファイルの場合1枚でしたら、エクセルから直接読み込んだり、ダブルクリックでExcel で開くこともできますので、それほどマクロの必要性を感じることはありませんまる。ただ量が多いと話は別です。

マクロ動画 多数の CSV ファイルをまとめて1シートごとに読み込む

動画で紹介したコード


Sub 複数CSV呼出()
    Dim Mycsv As Variant, Newbook As Workbook, Opencsv As Workbook
    Dim CountSh As Long, データ型(10) As Variant, i As Long
    
    Mycsv = Application.GetOpenFilename( _
        FileFilter:="CSVファイル,*.csv;*.txt", MultiSelect:=True)
        
     If IsArray(Mycsv) Then
        For i = 1 To 10
            データ型(i) = Array(i, 1)
         Next i
         Set Newbook = Workbooks.Add
         CountSh = Newbook.Worksheets.Count
         
         For i = 1 To UBound(Mycsv)
         Workbooks.OpenText Filename:=Mycsv(i), Origin:=65001, StartRow:=1, _
         DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
                                            ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, _
                                            Comma:=True, Space:=False, Other:=False, _
                                            FieldInfo:=データ型(i), TrailingMinusNumbers:=True
         Set Opencsv = ActiveWorkbook
         ActiveSheet.Copy After:=Newbook.Worksheets(CountSh)
         ActiveCell.CurrentRegion.Columns.AutoFit
         Opencsv.Close False
         Next i
     End If
End Sub

GetOpenFilenameメソッド

ファイルの選択するためのGetOpenFilenameメソッドの書式と引数の説明
Application.GetOpenFilename(FileFilter, FilterIndex, Title, MultiSelect)
ファイルを開くダイアログをマクロの中で使いたい時に、利用するのが、GetOpenFilenameメソッドです。
親オブジェクトは、 Applicationオブジェクトになります。

パラメータ 省略可否 データ型 引数の内容
FileFilter Variant型 ファイルの候補(種類)を指定する文字列(ファイルフィルタ文字列)を指定します。省略すると種類は「"すべてのファイル (*.*),*.*"」になります。
FilterIndex Variant型 引数「FileFilter」で指定した「ファイルフィルタ文字列,ワイルドカードのペア」において、何番目のペアを既定値とするかを指定します。この引数を省略するか、「ファイルフィルタ文字列,ワイルドカードのペア」のペア数より大きな値を指定すると、1番目の「ファイルフィルタ文字列,ワイルドカードのペア」が規定値となります。
Title Variant型 [ファイルを開く]ダイアログボックスのタイトルを指定します。これを省略すると、デフォルト”ファイルを開く" になります。
ButtonText Variant型 Macintoshのみ指定できます。
MultiSelect Variant型 TrueかFalseを指定します。Trueを指定した場合、複数ファイルを選択できるようになります。