背景
RPA化案件で
①システムからcsvデータをDL(複数)
②DLしたcsvデータをマージ
③マージしたデータをExcel台帳に貼付け
というような要求事項があり、②の実現方法について検討した。
方法
バッチ(bat)によるマージの方法を今回は採用した。
なお以下のコードは、マージ元がヘッダー付であり、マージ先に予めヘッダーを記入しておく必要がある。
merge.bat
@echo off
# csvファイルの数だけ繰り返し処理
for /f %%i in ('dir /b *.csv') do (
# csvファイルの2行目以降のすべてのデータを「merge.csv」に追加
for /f "tokens=* skip=1" %%b in (%%i) do (
echo %%b>>.\merge\merge.csv
)
)
以下の条件で、マージは実現できる。
・ローカル環境の同一フォルダ配下にバッチファイルおよびマージ元ファイルを置く
・バッチファイル格納先フォルダ配下にmergeフォルダを作成し、マージ先ファイルを置く