次の情報を表にまとめました
C D
----------- -----------
1 | 25% | 1 |
----------- -----------
2 | 50% | 2 |
----------- -----------
3 | 75% | 3 |
----------- -----------
4 | 100% | 4 |
----------- -----------
ユーザーがセル (A1) に列 D のいずれかの値を入力すると、セル (B1) には列 C の数値が表示されます。
これを実現するために次の関数を使用しています
=IF(A1=D1,C1,IF(A1=D2,C2,IF(A1=D3,C3,IF(A1=D4,C4))))
別の関数を使用してこれを行うより短い方法はありますか?
答え1
あなたが望むのは関数VLOOKUP
まず、列 C と列 D を逆にして、「ルックアップ」列が C に、返される値が列 D になるようにします。次に、セル B1 で次の数式を使用します。
=VLOOKUP(A1, C1:D4, 2)
セル A1 の値を 1 から 4 の間で変更すると、適切なパーセンテージが返されます。たとえば、上記の数式をセル B1 と B2 に入力し、他のすべてのセルに定数を入力すると、次のようになります。
| A B C D
-----------------------
1 | 4 100 1 25
2 | 1 25 2 50
3 | 3 75
4 | 4 100
答え2
持っていたものをそのままにしておいてください。以下の式を使用してください。
=INDEX(C1:D4,SMALL(D1:D4,A1),1)
短くてシンプルで、フォーマットを変更する必要がありません。Index は vlookup/hlookup 関数です (vlookup は自動で、index は車のスティックのようなものです)。Small はリストを調べ、2 番目のパラメータは、"1"、"2"、"3" などのランクを調べます。