VBA:Dir関数を利用してフォルダの中のCSVファイル群を読み込み、1つのシートにコピーする

VBA

Dir関数を利用し、選択したフォルダの中のCSVファイル群を読み込んで1つのシートにコピーする

今回は、Dir関数を利用して、フォルダの中のCSVファイル群を列挙して1つのシートにコピーする方法を作成します。

CSVファイルにヘッダーが存在する場合は、最初のファイルを読み込んだデータはヘッダー付き、それ以外は2行目からのデータをシートに貼り付けします。

ヘッダーが存在しない場合は、全てのデータをシートに貼り付けします。

CSVファイルを列挙して読み込み1つのシートに書き込む関数を利用するには、列挙したCSVファイルデータをコピーして貼り付けするためのシート名を追加しておく必要があります。

関数の説明

strFolder:CSVファイルを列挙したいフォルダを設定します。

nHeader:ヘッダーがある場合は1、ない場合は0を設定します。

strSheetName:列挙したCSVファイルのデータを貼り付けするためのシートを設定します。

使用例

C2セルにフォルダが入っています。

C2セルのフォルダを初期設定として、「フォルダを選択する」関数に渡しています。

次に、選択したフォルダとパラメータを設定し、「CSVファイルを列挙して読み込み1つのシートに書き込む」関数に渡しています。

今回の例は、15行目でヘッダーなし、シート名を「data」を設定して、列挙したファイルのデータを「data」シートにコピーするようにしています。