EXCELシートを申請フォームにするときのネガパターン

この世で最も便利なアプリケーションことEXCELであるが、そのあまりの汎用性の高さから、申請フォームとして使用されることがある。本来ならMicrosoftのFormsとか使うべきなんだろうけれど、FormsのようないわゆるSaaSシステムは契約期間中にしか使えない。契約が終わってしまうと履歴が残らないのだ。そうなってくると、少なくともファイルは残ってくれるEXCELシートを使いたい気持ちはよくわかる。わかるんだけれど、「紙の申請用紙」をそのままEXCEL化したようなものが作成されることがあってそれは違うんじゃないかと思う。なので、今まで出会ったネガパターンな手法を適当に書き散らしたいと思う。

1.そもそも印刷前提にするならEXCELなんて使うんじゃねーよ

EXCELの大きな問題点として、印刷するとセル内右端の文字が欠けるというものがある。どんなフォームを作成したところでEXCELで作ったら印刷時に必ず欠ける。なので、印刷を重視するならWORDで作ったほうがよいのだ。この欠落するという欠点はPDF化でも発生する。
データの再利用を考えるなら(ほかのアプリケーションでデータソースとして使用したい場合や、マクロで一覧表を作りたい場合等)EXCELを使いましょう。この際、正確な印刷は諦めましょう。正確な印刷を求めるなら、WORD等別のアプリでフォーム作りましょうということだ。

2.死ぬほど凝ったレイアウトにしちゃう症候群

申請フォームはもともと申請用紙として存在した場合があって、これをEXCEL化する際に、紙のレイアウトを完璧にトレースしたくなっちゃう人がいる。部署名を左上に、日付を右上に書かせ、大量の承認印欄を上部または下部に配置する。
これをセルで再現しようとすると、セルの横幅が不定になってしまうので、結合で対応し始める。

こんなめんどくさい調整したくないので、セルを正方形にして結合させるような手法、所謂EXCEL方眼紙が降臨してしまうのだ。

フォームEXCEL化の際に、項目を欠落させてはいけないけれど、レイアウトを再現する必要はない。EXCELというソフトに沿ったレイアウトに変更すべきであって、それは「1行に1値(+補助項目1つまで)入力を原則とするレイアウト」だと思われる。
例えば承認印欄をEXCELに最適化させるとこんな感じになるかもしれない。

3.なんとしてもA4用紙1枚に入れたい症候群

いやいや、電子化するんだったら電子の便利な部分に目を向けるべきで、紙の制約は無視していいでしょ?と思うのだけれど、その申請書をPDFなんかに変換して永続保存したいような場合、A4サイズのPDFにしたいのはまあわからんでもない。
そうではあるけれど、少なくともA4用紙1枚に入れなきゃいけないという固定観念をまずは取っ払った方がよいのではないかと思う。
A4用紙1枚にいれたいという制約があると、1行に2つも3つも記入項目入れたくなってしまう。これをやってしまうと、ヘッダ部分のセルと入力用セルのつじつまを合わせるために、悪名高い方眼紙EXCELが出来上がってしまうのだ。だから、極力やめた方がいいと思う。1行に入力項目は1つが原則だ。
ただし、例えば購入申請で購入数も記載させたい場合には、補助項目として2つ目の入力項目があってよい。

4.セルに中途半端な値が入っているフォーム

①いやいや、セル内に印って何よ?
最近出会ったEXCELのフォームに、セルの中に「          印」という値が入っているフォームがあった。

これは、このセルに、名前記載して電子印を押してほしいってことなのだろうけれど、なんでわざわざスペース消して、名前書いて、印の文字が右寄りになるように調整せにゃならんのだ。そもそも電子印なんて必要か?とおもうのだけれど、どうしても印をおすスペースを作りたいのなら、印を押す場所の専用セルを設ければいいのだ。

②いやいや、セル内に年月日って何よ?
非常によく見かけるのがセルの中に「    年 月 日」という値がはいっているパターンだ。

なんで2023/9/28と入力したいだけなのに、わざわざスペース消して2023って書いて、スペース消して9って書いて、スペース消して28って書かなきゃならんのだ。
入れてほしい値のフォーマットを値としてそのセルに入れるべきではない。年月日表示させたいのであれば、セルの表示形式をyyyy年mm月dd日にすればよいだけだ。そうして、入力説明として「2023/9/28のように、日付を入力してください。正しい値が入ると2023年9月28日のように表示されます。」と表示させておけばよいのだ。

この亜種が年と月と日を別々に入れるというやつで、1つの値を入力させるために6セル使用してくる。

せっかくEXCEL使うんだから、俺は「CTRL+;」で日付入力したいのだ。

5.セル結合したくてしょうがない症候群

あまり推奨はしないけれど、文書作成のためにEXCELを使うことがある。この文書に記載されたデータが再利用されないような場合、レイアウトとしてセル結合を使うのは、まあ許容範囲ではある。しかしこのような文書をつくり続けていると、セル結合が当たり前になってしまう。
問題は「申請フォーム」のようにデータ入力してもらい、そのデータを使うようなものを「セル結合が当たり前と思っている人」が作ると、データ入力域もセル結合してしまうのだ。セル結合のなにが問題かといえば、入力値の再利用が難しくなることだ。要はコピペが失敗するということ。いやいや、電子化のメリット打ち消すんじゃねーよという話である。
ということで、「セル結合したくてしょうがない症候群」に罹患しないためにも、EXCELで文書を作成させるのはやめた方がよい。罹患患者を見かけたら、「再利用したいデータ欄だけは結合するな」と口を酸っぱくして言いましょう。
逆に言えば、意地でも結合しないレイアウトを目指すべきで、それが「1行に1値+補助項目」までにするレイアウトなのだ。

6.○をつけさせたがる症候群

WORDならわからないでもないけれど、EXCELの申請フォームで「どちらかに○をつけてください」というものがあったりする。この際に「描画オブジェクト」で○をつけさせたりするのだ。

その描画オブジェクトの○って印刷すると確実にずれるけど、大丈夫だよな?*1
基本、2択であっても、オブジェクトで○なんてつけさせるのではなくて、セルに値を入れさせるべきだろう。

以上のことから、EXCELの申請フォームってのは、おそらくこんなものがいいのだろう。

ポイントとしては
Excel申請フォームは3列でよい。→3列とは見出し、値、補助項目のこと。
・横に長くなるようにレイアウトせず、縦に長くなるようにレイアウトすること。
・特にデータ入力欄は結合しない。

ということかなと思ったりしたのであった。

*1:正確にはセル内の文字位置が印刷でずれるので、「はい・いいえ」で「いいえ」側に〇をつけたつもりが、間の・に〇がついたようになっていることがある