Microsoft Excelで一覧から最も近い大小値を取得
Excelで値のリストがあり、完全に一致するものが見つからない場合は、最も大きい値または最も小さい値のいずれかを見つける必要があります。たとえば、数値の比較を行っていて、範囲内で完全に一致するものが見つからない場合は、次に大きい数値または小さい数値を使用して先に進むことができます。
Countif、Large、Smallの数式を組み合わせて使用して、出力を取得できます。
Countifは、特定のデータがセルの範囲で繰り返される回数をカウントするために使用されます。
構文= COUNTIF(range、criteria)
大:データセット内でk番目に大きい値を返します。
構文= LARGE(array、k)
小:データセット内のk番目に小さい値を返します。
構文= SMALL(array、k)
最も近い大きい数と小さい数を理解しましょう
乱数1、2、3、5、8、10のリストがあり、以下を評価する式が必要です。
-kがリストにある場合は、kを返します-kがリストにない場合は、次に大きい値を返します。たとえば、k = 7の場合、8を返します(最も近い大きい数の場合)
-kがリストにない場合は、次に小さい値を返します。たとえば、k = 7の場合、5を返します(最も近い小さい数の場合)
例を見てみましょう。列Aにいくつかの乱数があり、この範囲の値を見つける必要があります。これは、46を含むセルB2に最も近い小さい値または最も近い大きい値です。この数値はこの範囲では使用できません。以下のスクリーンショットを参照してください
最初に最も近い大きい数を計算する方法を見てみましょう:
次に大きい値である46を手動で確認できます。
次に、数式を使用して同じ結果を取得してみましょう。LARGE関数とCOUNTIF *関数を組み合わせて使用し、最も近い大きな数値を生成します。
基準がルックアップ値の「>」記号よりも大きい、つまりセルB2ルックアップ値と組み合わせた大なり記号は、46より大きい5つの値(54、57、61、74、83)を返します。
-
Large&Countiffunctionsをマージすると、54になります。以下のスナップショットのセルG2とG3の数式を参照してください。
PS:CountifformulaのB2はルックアップ値です。つまり46セルC2では、最も近い大きい*数を見つけるために使用される式は
です。 === = LARGE($ A $ 2:$ A $ 8、COUNTIF($ A $ 2:$ A $ 8、 “>”&B2))
ここで、最も近い小さい数値を計算する方法を見てみましょう-次に小さい値である28を手動で確認できます。
数式を使用して同じ出力を取得しましょう-SMALL&COUNTIF *関数の組み合わせを使用して、最も近い小さい数値を生成します。
基準が「<」未満で、ルックアップ値、つまりセルB2未満の符号をルックアップ値と組み合わせると、46より小さい2つの値(16と28)が返されます。
-
Small&Countiffunctionsをマージすると、28になります。以下のスナップショットのセルG5とG6の数式を参照してください。
以下の式のスクリーンショットを参照してください:
注:CountifFormulaのセルB2はルックアップ値です。つまり46セルD2では、最も小さい*数を見つけるために使用される数式は
です。 === = SMALL($ A $ 2:$ A $ 8、COUNTIF($ A $ 2:$ A $ 8、 “<“&B2))
これは、最も近い大きい数とクローゼットの小さい数を返す方法です。