CSVファイルは、Excelで開くと一覧で確認できるので便利です。
テキストエディタで見るより内容を追いやすく、データの確認や簡単な修正もしやすくなります。

ただ、CSVをそのままExcelで開くと、Excel側の判断で値の見え方が変わることがあります。
先頭に0が付いたコードが数値として扱われたり、日付のような値が別の形式で表示されたりすると、元のCSVと同じ値なのか分かりにくくなります。

この問題については、以前の記事で書きました。

今回は、CSVの値を変えずに、Excelで確認しやすい形へ変換するツールをCodexで作っていくことを説明します。

CSVをExcelで確認しやすい形に変換する

今回作るのは、CSVファイルを指定するとExcelファイルを作成するツールです。
たとえばsample.csvを指定すると、sample.xlsxを作成します。

Excelに出力するときは、CSVの値を文字列として扱います。
商品コードや会員番号のように先頭の0がある値でも、そのまま確認できるようにします。

さらに、Excelで開いたときに見やすいように、表には罫線を引きます。
CSVをExcelファイルに変換するだけでなく、確認しやすい表として開けるようにします。

今回作るツールは以下です。

  • CSVファイルを指定して実行する
  • CSVと同じ名前のExcelファイルを作成する
  • CSVの1行目をExcelの1行目に出力する
  • CSVの2行目以降をExcelの2行目以降に出力する
  • すべての値を文字列として出力する
  • Excelで見やすいように罫線を引く
  • 作成したコードはGitHubで公開する

最初から機能を増やしすぎると、作るのに時間がかかります。
まずは、CSVを指定してExcelファイルを作るところまでに絞ります。

Codexには作りたい動きを伝える

Codexに頼むときは、「CSVをExcelに変換するツールを作ってください」だけでは少し足りません。
それだけでもコードは作れるかもしれませんが、今回ほしい動きから外れる可能性があります。

今回は、CSVの値を文字列としてExcelに出力することが大事です。
Excelで確認しやすいように、罫線を引くことも伝えておきます。

使うライブラリも、Codexに伝える内容として整理します。

使うもの役割
argparseコマンドラインでCSVファイルのパスを受け取る
csvCSVファイルを読み込む
pathlib入力ファイルの確認や出力ファイル名の作成に使う
openpyxlExcelファイルを作成する

この表の内容をもとに、Codexには次のように伝えます。

  • CSVファイルを指定して実行する
  • CSVと同じ名前のExcelファイルを作成する
  • CSVの値は文字列としてExcelに出力する
  • Excelで見やすいように罫線を引く
  • コマンドライン引数にはargparseを使う
  • CSVの読み込みにはcsvを使う
  • ファイルパスの処理にはpathlibを使う
  • Excelファイルの作成にはopenpyxlを使う
  • エラーが起きたときは分かりやすいメッセージを出す

細かい指示文や作成したコードは、GitHubで公開します。

次回はCodexで作って動かす

今回は、CSVの値を変えずにExcelで確認しやすくするため、どのようなツールを作るのかを整理しました。
CSVをそのままExcelで開く方法もありますが、値が変わる可能性があるなら確認作業として不安が残ります。

次回は、実際にCodexでコードを作ります。
CSVファイルを指定してExcelファイルを作成し、先頭の0がそのまま残るかを確認します。

作成したコードはGitHubでも公開します。