2020年1月10日スポンサーリンクこんばんは。nanana-blog管理人のナナナです。ブログを訪問し記事を読んでいただきありがとうございます。会社の仕事でCSVファイルをExcelに取込んで処理をする機会は多いのではないでしょうか。定型業務であれば同じファイル形式のなのでVBAで取込み処理を作成しておくと時間短縮になります。VBAでCSVファイルを取り込むサンプルを紹介します。最後にCSVファイルを取り込むサンプルVBAExcelにボタンを作成して、ボタンを押すと特定のCSVファイルの内容をExcelに取込むVBAプログラムのサンプルです。"指定したファイルが存在しません。"D:\temp\Dep.csv"変数「SorceFilePath」に取込みたいCSVファイルのパスを格納します。サンプルではDドライブのtempフォルダにある「Dep.csv」ファイルを取込みます。Dir(SorceFilePath)Dir関数を使用して取り込みファイルが存在しているかを確認しています。Dir関数はファイルが存在していると戻り値がファイル名で、存在していないと戻り値が「””(空文字)」になります。"指定したファイルが存在しません。IfDir関数の戻り値が空文字だった場合は、メッセージを表示させて処理を終了します。FreeFileOpenメソッドで使用するファイル番号を取得します。#intFFOpenメソッドを使用してDep.csvファイルを開きます。Inputの部分には他にも以下のような値を入れることができます。EOF(intFF)取り込みファイルの最終行までDoからLoop間の処理を繰り返し処理します。strData取込みファイルのを行単位で関数strDataへ格納します。"")サンプルのCSVはダブルクォーテーション(”)で値を囲んでいるため、Replace関数を使ってダブルクォーテーション削除します。",")Split関数を使って各項目を配列に格納します。項目間の区切り文字はカンマ(,)なのでSplit関数の第2引数にカンマを指定します。arrData(2)Excelに取得した値を追記していきます。VBAを実行しているブックのシート名「Sheet2」に値を入力していきます。IXにはセルの行番号が入ります。サンプルファイルの19行目でIX=1と指定しているので、1行目から順番に値を追記していきます。1次のデータのためにIXの値に1を足します。#intFF全てのデータを追記し終わったら、ファイルを閉じます。処理結果は次のようになります。最後にいかがだったでしょうか。本日はExcelのVBAでCSVファイルを取り込む手順を紹介しました。システムからデータを出力する時、ファイル形式がCSVであることは多いです。同じCSVを何度も取り込む場合はVBAを作成しておくと時間短縮になるので参考にしてみてください。nanana-blog。