古いシステムを使っている会社だと、今もCSVファイルをけっこう使っているのではないかと思います。
Aシステムから出力されたファイルをBシステムへ取り込む作業を人力で毎日やっています、とか。
ファイルの内容を目でチェックして異常があれば加工しています、とか。
最近CSVファイルを簡単にソート(並び替え)する方法について調べる機会があり、思った以上に簡単だったので、記録として残したいと思います。
1.CSVファイル並び替えツールの作り方
「CSVファイルをドラッグ&ドロップすることで、中身を並び替えたファイルを新しく作ってくれるツール」を作成します。
ⅰ.テキストエディタ(メモ帳、サクラエディタ、VScode等)を開きます。
ⅱ.以下の内容を貼り付けます。
@echo off
rem ドラッグされたファイルをWindowsのsortコマンドで並び替えるだけのツール。
rem 引数がない場合は終了する
if "%~1"=="" (
echo 引数がありません
pause
exit /b
)
cd %~dp0
sort %1 > .\%~n1_sort%~x1
pause
ⅲ.保存して閉じます。ファイル名は「CSVファイル並び替えツール.bat」とします。
作成は以上です。
テストしてみましょう。
以下のような並び替えテスト用のファイルを用意します。
他に並び替えたいファイルがあれば、それを使用しても問題ありません。
並び替えたいファイルを「CSVファイル並び替えツール.bat」へドラッグ&ドロップします。
出てくる黒い画面は閉じてしまって大丈夫です。
「(元のファイル名)_sort.csv」で並び替えられた新しいファイルが作成されるはずです。
さきほどの並び替えテスト用のファイルでは、以下のような結果になりました。
2.並び替えツールの注意点
並び替えにはWindowsコマンドのsortを利用しています。
このコマンドでは細かいソートキーの指定が難しいため、今回は特にキーを指定せず
全体をキーとみなして並び替えています。
このツールですが、CSVファイル以外もテキストファイルであれば並び変えることが可能です。
本当にちょっとしたツールなのですが、担当している業務によってはすごく使えるツールなのではと思っています。
ぜひご活用下さい。