Excel スマートな計算式と検算容易性について考える

Excel 一歩先へ

スポンサーリンク

設問

ちょっとしたExcelの問題(というか、実務でも普通に生じえる課題と思うが)。

A1セルとB1セルには、計算式により数値が算出してある。A1セルとB1セルの差が0ならば「OK」を、0でなければ「NG」を表示する数式を入力せよ。

これについて、どういう回答を示すだろうか。

ExcelのIF関数を知ってて、問題文をバカ正直に読めば

=IF(A1-B1=0,”OK”,”NG”) …式①

という数式を入れるところ。

そして、ちょっと算数が分かる人なら
「A1-B1=0なんて書き方は、無駄があるだろ。次の式②でいいじゃん」

=IF(A1=B1,”OK”,”NG”) …式②

とするかと思う。

式②は明らかに①よりスッキリしててスマートだ。

だから、式①なんてやめて式②にするべきだ・・・とは実は言い切れない。
言い切れる場面も多いだろうけど、絶対ではなく、場合による。

「A1セルとB1セルが等しいかどうか。差が0になるかならないか。」を見るだけならもちろん、式②で良い。

しかし、「式の結果がNGになった。A1セルとB1セルの詰めるべき差は今いくらなのか」を知りたい場合はどうだろうか。

たとえばA1セル:123,456,789、B1セル:2,468,751なんて複雑な数値になってたとして、その差を幾らなのか突き止めてゼロにしたいというわけだ。

これは一目では幾らか分かるのは難しいだろう。

F9キーを使って検算する

さてここで、Excelのちょっとした機能説明だ。
Excelでは、セルに入力された数式の一部をドラッグしてからF9キーを押すと、「A1-B1」とかいう数式が、結果の数値だけに直されて表示される。

検算とかをしたいときに便利だ。

間違ってそのままEnterキーを押しちゃった日には、数式が単なる数値に本当に書き換わってしまうので、くれぐれもそれは避けるようにしよう。

気を付けててもEnterキーを押してしまったなら、Ctrl+Zで元に戻そう。

そして、上記の式①ならば、「A1-B1」の部分をマウスでドラッグしF9キーを押すことで、差の120,988,038が表示される。

これは式②ではできないことだ。したがって、式①が式②に劣るとは言い切れない。

式を短く簡略化するばかりが必ずしも正解ではないことを覚えておこう。

※ちなみに問題文を
「A1セルとB1セルには、数値が入力してある。」ではなく
「A1セルとB1セルには、計算式により数値が算出してある。」と回りくどい書き方をしたのも一応理由がある。
「A1セルとB1セルが合致しないなら、どっちかのセルの値をもう一方に貼り付けりゃいいだけじゃん」という突っ込みを避けるためです。しょうもないことですけど。

スポンサーリンク