Excelで関数を用いて数式を作っていると、特に引数が多い場合、どうしても横長になり、数式の構造が理解しにくくなってしまう。そこで提案したいのが「縦書き数式」の採用だ。
これは、数式を横に並べるのではなく、意味のまとまりごとに上から下へ配置する書き方を指す。
あるある、ダラダラと横に長い数式
まず、よくある例として下図を見てもらいたい。「売上」から「原価」を引いた粗利の比率の良しあしを、A~Cで評価したものだ。粗利率が30%以上は「A」、20%以上は「B」、それを下回る場合は「C」になっている。D2の数式は次の通りだ。
=IF((B2-C2)/B2>=0.3,"A",IF((B2-C2)/B2>=0.2,"B","C"))
同様の横長数式をあちこちで見る(もちろんもっと長いのもある)。では、これを「縦書き数式」で書き直すとどうなるのか。
まず、D2をダブルクリックして、セル内で数式をアクティブにする。「←」「→」を使えば数式内でカーソルを移動できる。では、数式の冒頭にある「=IF((B2-C2)」の「((」の間にカーソルを置いて、[Alt]キーを押しながら[Enter]キーを押す。はい、これでセル内改行ができた。セル内改行は「表示上の改行」であって、Excelは数式の内容としては無視する。よって数式には影響を及ぼさない。
同様の考え方でセル内改行を順次実行して、数式を次のような形にする。行頭部分には半角スペースを2つ単位で入力してインデント代わりにし、数式の構造をより明快にしている。このスペースもExcelは無視するから数式に影響はない。これが「縦書き数式」の基本になる。
=IF(
(B2-C2)/B2>=0.3,"A",
IF(
(B2-C2)/B2>=0.2,"B",
"C")
)
次のページ
「縦書き数式」と相性が良いLET関数この記事は会員登録で続きをご覧いただけます

![「((」の間にカーソルを置いて、[Alt]キーを押しながら[Enter]キーを押す](https://cdn-xtech.nikkei.com/atcl/nxt/column/18/00286/031000403/02.png?__scale=w:680,h:409&_sh=0cf05b0720)






