センサーの読み取り値がいくつかあり、値が許容範囲内にあるかどうかを確認しています。
これを行うには、IF
を使用して、値が>
または<
計算された(平均)値であるかどうかを確認します。結果はそれぞれの列に保存されます。最後に、結果を合計して、範囲外(つまり平均を上回っている)の数を取得します。
たとえば、Ax
をMean
.Ax
と比較して、1
.Ax
の0
またはIf value is outside accepted bounds
を取得します。
次に、If value is outside accepted bounds
.Ax
の合計を実行して、Number of values outside bound
.Ax
を取得します。
質問
これを単一の数式に変換するにはどうすればよいですか?
あなたが求めている関数はCOUNTIF()
です:
_G3
_に次の数式を入力し、_G3:I3
_にctrl-enter/copy-paste/fill-rightを入力します。
_=COUNTIF(A3:A8,">"&D3)
_
COUNTIF()
は、最初の引数の各値を2番目の引数の基準と照合し、それが満たされた回数をカウントします。
COUNTIF()
を使用するのが、最も簡単で最良の解決策です。
もちろん、次のような式を理解するために、より複雑で難しいものを使用することもできます。
_=SUMPRODUCT(--(A3:A8>D3))
_
または配列が次のように入力されました
_{=SUM(--(A3:A8>D3))}
_
またはそれらのさらに不必要に複雑なバージョン。
ただし、この特定のケースでこれらのいずれかを使用することで得られるメリットはnoです。
実際、ヘルパー列の数を減らすことに関心があるように思われる場合、さらに優れた全体的な解決策は、平均ヘルパー列も省くことです。
_D3
_に次の数式を入力し、_D3:F3
_にctrl-enter/copy-paste/fill-rightを入力します。
_=COUNTIF(A3:A8,">"&AVERAGE(A3:A8))
_
(もちろん、この式を=SUMPRODUCT(--(A3:A8>AVERAGE(A3:A8)))
または{=SUM(--(A3:A8>AVERAGE(A3:A8)))}
に変換することで、初心者にとっても理解しにくくなる可能性があります。)