
Excel で、数値セット内の特定の値に対応する数値を取得したいのですが、
指定された値は順序が乱れています。
例:
1 | 21
2 | 34
3 | 15
4 | 47
5 | 29
ここで最小値は15、最大値は47です。
15 と 47 に対応する数字、つまり 3 と 4 を取得したいです。
注: 列 2 の値は順序付けられていません。
どのような Excel 数式を使用すればよいですか?
答え1
列2の値が一意であるかどうかは述べていません。初め列2(B)の最小値と最大値の出現を検索し、次のようにして列1(A)の対応する値を取得します。
=INDEX(A1:A5,MATCH(分(B1:B5),B1:B5,0)) =INDEX(A1:A5,MATCH(マックス(B1:B5),B1:B5,0))
答え2
使用できる方法の 1 つは (おそらく最善ではありませんが)、2 つの追加列を作成することです。1 つの列には最大値を選択する数式が含まれ、もう 1 つの列には最小値を選択する数式が含まれます。
=IF() 関数を使用して、値が最大値か最小値かを判断できます。
次の例を見てみましょう。
列 C には次の内容が含まれます。
=IF(B1=MAX($B$1:$B$5),A1,"")
列 D には次の内容が含まれます。
=IF(B1=MIN($B$1:$B$5),A1,"")
行を下へコピーします。C4 が最大値 (4) で、D3 が最小値 (3) であることがわかります。
これらの列をすばやく合計すると、それらを別のセルに入力でき、どの行に値が含まれているかを気にする必要がなくなります。
B7には次の機能があります:
=SUM(C1:C5)
B8 には次のものがあります:
=SUM(D1:D5)
繰り返しますが、おそらく最善の方法ではありませんが、(ある程度は)機能します。