#環境・前提
- Excelが好きだ。オートフィルが好きだ。
- 脳が疲れていてswitch-case文しか思いつかない。
#使用例
「市町村コードを入力すると市区町村名を返してくれる処理」を大量のswitch-case文で書く場合で説明します。
総務省 - 全国地方公共団体コード
#Excelの書き方(Ruby編)
- F2セルに
="when """&A2&""" then puts """&C2&""""
を記入します。
- F2セルの右下の■(フィルハンドル)をダブルクリックします。
- 選択範囲のセルをコピーします。
- エディターにペーストします。
やりました!!これで一気に1700行あまりを書ききりました!!
あとはendで閉じれば完了です。
#行を分けたいときのExcelの書き方(c言語編)
先程のRuby編では1行にすべての処理を記載しました。~~これでは可読性が下がりますね。~~複数行に分けてswitch-case文を量産する方法にも触れます。
- 行を増やします。参考:EXCEL 1行おきに行挿入する方法
- H2セルに
="case "&A2&":"
、H3セルに="printf("""&C2&""");"
、H4セルにbreak;
と記入します。入力した3つのセルを選択状態にします。
- 右下の■(フィルハンドル)をダブルクリックします。
- 選択範囲のセルをコピーし、エディターにペーストします。
成し遂げました!!たったの4ステップで5300行あまりのswitch-case文を量産完了です。
(動かして気づいたのですがc言語は0から始まる数値は8進数と認識されるのでエラーになります。)
#さいごに
本当に大量のswitch-case文は必要かどうか胸に手をあてて考えましょう。(僕はこれ以外思いつきませんでした...)