パソコンクラブの講習会で、N関数を使った数式について質問がありました。
このN関数は、、、
15年位前までは、ネット上の問題を解くのに頻繁に使っていたんですけどね。
さすがにしばらく使っていなかったらうまく説明できなかったのです。
見せてもらったファイルでは、N関数を使う意味が判然としなくて
別に使わなくても計算できるようで、なので余計に分かりづらく説明もしにくかったのです。
そこで、以前作った出生子牛の出荷予定日を算出する式を開いてみました。
これならば、分かりやすいかと思います。
基本的に生まれた子牛は前橋市場へ出荷します。
前橋市場は毎週木曜日に市場が開催されます。
和牛で言えば、だいたい130日くらいが出荷の目安。
ではその近辺で木曜日はいつになるのか
といった関数式を作れば出荷の予定日を算出できます。
その式は、誕生日に出荷目標日を足し算して、プラス木曜日までの日数が計算できれば出荷目標日直近の木曜日が分かります。
上図のような式になります。
七曜日ですので式中のWeekday関数の中で曜日を計算し、木曜日の5であるかどうかを判定させます。
すると、かっこの中は以下のような判定をされます。(TRUEがハイ、FALSEがイイエという意味)
式中では、当然一つだけTRUEの判定(7をTRUEだと)
このTRUEとFALSEは、Excelの中では1と0と判定されます。
しかしそのままでは計算できないので、N関数で数値化して1と0に変換します。
カッコの中をみるとしっかりと数値化されています、。
この数値に1から6までと0を配列として掛け算すると
誕生日+出荷目標日からの次の木曜日までの日数が計算されます。
今回の場合、目標日までが131となっていますのでSUM関数の中では0が返ってしまいますが...
130とするとプラス1と計算されます。
全体の式の答えとして、3月30日が出荷目標日直近の木曜日だよと返してきます。
TRUEとFALSEは×1として掛け算しても数値化することができます。
あと--とマイナスを二つ付けても同じ結果が返されます。
※コメント投稿者のブログIDはブログ作成者のみに通知されます