こんにちは。ヒトツメです。
今日はExcelの話と、簿記にも少しだけ関連する話を交えながら、集計表の見やすい枠線を、簡単に作る方法について解説をしていきたいと思います。
枠線の設定がかなり面倒
集計表というと、具体的な定義があるわけではありませんが、一般的には、試算表や損益計算書、貸借対照表など、一定のデータを集計して作るものといいます。こういった表の特徴は、項目すべてが対等なわけではなく、階層構造ができていて、その階層構造も含めて、表の中で表現する必要があるというところに、特徴があります。
つまり、売上や売上原価と、売上総利益は階層が異なり、売上と売上原価よりも、売上総利益の方が上の階層にあるため、それを表のどこかで表現してあげないと、あまりよく知らない人たちに誤解を与える可能性がある、ということです。
そこで、次の図のような表を作ることで、わかりやすく表現をするというのが一般的です。項目ごとの階層構造を表しながら、下位の項目を内数として表現するといった具合です。
ただ、こういった枠線を引くのは、意外と手間です。
「Ctrl+Shift+6」で外枠罫線を引くことができるので、「Shift」を押下しながら選択範囲を広げ、都度「Ctrl+Shift+6」を押せば、多少早めに罫線を引くことはできますが、それでもかなり手間がかかってしまいます。
規則性がないかを考える
そこで、この罫線に規則性がないかを考えます。規則性があれば、それを関数などで表現し、条件付き書式を使って効率的に罫線を引くことができるかもしれません。
縦と横に分解してみる
そこで、引かれている罫線を、縦と横に分解します。すると、下の図のようになります。
このようにして見ると、縦の線に関しては、より右側のセルに値が入っている場合に引かれており、横の線に関しては、より左側のセルに値が入っている場合に引かれていることがわかります。
例えば、「売上」と書かれている行を見ると、「売上」という値が入っているセルの左側すべてに縦の線が入っており、一方で、そのセルの右側全てに横の線が引かれています。
- 縦の線:より右側に値が入っているかどうかが基準
- 横の線:より左側に値が入っているかどうかが基準
COUNTAを使う
そこで、A1から集計用の項目が記載されているとして、次のような式を使えば、対象のセルを基準として、より右にもしくはより左に値が入っているかどうかを確認することができます。
=COUNTA($A1:A1)
ポイントは最初のA1に記載された「$」で、この「A」だけを絶対参照とすることで、この式を横に引っ張れば「=COUNTA($A1:B1)」となります。COUNTAは、指定された範囲に含まれる空白以外のセルの数を数えるというものなので、この式を今回の例で当てはめると、次のようになります。
この結果をよく見ながら、縦の線と横の線の関係を見ると、次のような関係性が見えてきます。
- 縦の線:値が「0」のセルの右側に縦の線が引かれている
- 横の線:値が「1」のセルの下側に横の線が引かれている
条件付き書式を使う
あとは条件付き書式を使いながら、この結果を埋め込んでいくだけです。
Excelの条件付き書式で、新しいルールから、「A:C」に対して、「=COUNTA($A1:A1)=0」の条件の時に右側に罫線を、「=COUNTA($A1:A1)>0」の時に下側に罫線を、それぞれ引くというルールを設定します。
あとは、このルールだけでは設定できない、一番右側と一番上側の罫線を設定すれば、入ってくる値にしたがって、自動で罫線が引かれるようになります。
さいごに
このやり方だと、最初に設定すれば、値が入れば自動で罫線が設定できるので、計算式を入れた後で後から罫線を設定するという手間がかからず、非常に便利です。色付けまでしていくと、これよりさらに複雑な条件付き書式が必要になりますが、いったん枠線だけ、というのであれば、非常に楽です。
このやり方だと、必ず内数の表記がより上に記載される必要がある、つまり、項目を包含する上位階層の項目が下に記載されないといけない、という不便はありますが、逆に表に規則性が生まれて、見やすくなると思います。
コメント