はじめに
私はPythonでRPAしたり、GASで簡単なスクリプトを書いてスプレッドシートをデータベースとしたアプリケーションを作成することがあります。そのため、私はほかのプログラムで利用することを考えて整った表をつくるのですが、コードを書かない人からすると「機械で処理できる表の形式」が分からず、見た目重視でシートを作成してしまう為、スプレッドシートが持つ標準の関数や機能の活用チャンスすら逃しているように見えます。なので、GAS書きの視点で「とりあえずやってはいけないこと」をまとめます。
表形式データにおける原則
総務省の資料が優秀なので、これをもとによくあるミスをつまんで解説します。データを再利用するためには大事なことです。
https://www.soumu.go.jp/main_content/000723626.pdf
1セル1データ
ひとつのセルに入る情報はひとつだけにしましょう。会社名や日付の後に(xxx)と注釈を入れてはいけません。別の列を使いましょう。
悪い例
人間 | プロフィール |
---|---|
Aさん | 23歳 無職 |
良い例
人間 | 年齢 | 職業 |
---|---|---|
Aさん | 23 | 無職 |
数値は数値で
スプレッドシート、エクセルでは数値に変換できないものは文字列に変換されます。計算を行いたければ半角で入力して数値として認識させましょう。
悪い例
人間 | 体重 |
---|---|
Aさん | 60kg |
60kgは60kgという文字列です。
良い例
人間 | 体重_kg |
---|---|
Aさん | 60 |
セルの結合をしない
表という美しい二次元構造をわざわざ壊す理由はどこにもありません。整然データを保ちましょう。
スペースや改行で体裁を整えない
人間にとって認識が難しい文字のため事故が起こりやすいです。見た目を整えることは醜い行為です。
機種依存文字を使用しない
①などの丸付き数字は機種依存文字なので嫌われます。コンソールで表示しようとするだけで「不正なマルチバイト文字」となり、プログラムでの処理にも適していません。
データが分断されていないか
不要な分割が多いと、読み取りに支障をきたします。
人間にとっても、Ctrl+カーソルでの移動でつっかえることが多いとストレスがたまるため、完全にからの行、列を作るべきではありません。
悪い例
人間 | 趣味 |
---|---|
Aさん | 森に行く |
Bさん | 海に行く |
Cさん | 川に行く |
良い例
人間 | 趣味 |
---|---|
Aさん | 森に行く |
Bさん | 海に行く |
Cさん | 川に行く |
一つのシートに複数の表を作らない
よく見かけます。表は必ず左上ピッタリから、1シートに一つの表を作るようにしましょう。
表がどこから始まってどこまでだなんて、人間の都合でしかありません。人間が目と手を動かして必死に眺めること自体が非効率です。
まとめ
表は見やすくするためというよりも、機械的に入力し、機械的に処理するためのものとして考えましょう。効率的にできることもできなくなってしまいます。
次回は実際に自動化に関する記事を書きたいです。
#参考
総務省, 統計表における機械判読可能なデータ作成に関する表記方法
https://www.soumu.go.jp/main_content/000723626.pdf