行と列を指定したセルの値
INDEX(配列,列番号,行番号)
セル範囲を指定。
配列内にあり、値を返す列の番号を指定。左端を1 とします。
範囲が1 列の場合、省略できますが、必ず行番号を指定しなければなりません。
0 を指定すると列全体の値の配列が返されます。
配列の範囲外の値を指定すると、#REF! が返されます。
範囲内にあり、値を返す行の番号を指定。上端を1 とします。
範囲が1 行の場合、省略できますが、必ず列番号を指定しなければなりません。
0 を指定すると行全体の値の配列が返されます。
配列の範囲外の値を指定すると、#REF! が返されます。
例(下記はExcel のシートとします)
|
A |
B |
C |
| 1 |
|
単価 |
個数 |
| 2 |
りんご |
\97 |
40 |
| 3 |
バナナ |
\48 |
38 |
| 4 |
レモン |
\77 |
15 |
| 5 |
オレンジ |
\35 |
25 |
| 6 |
洋梨 |
\83 |
40 |
| 7 |
|
|
|
| 8 |
アーモンド |
\392 |
10 |
| 9 |
カシューナッツ |
\497 |
16 |
| 10 |
ピーナッツ |
\175 |
20 |
| 11 |
マカデミアナッツ |
\245 |
12 |
=index(A1:C11,2,3)=38 (C3 の参照)
=index(C1:C11,,match(E1,A:A,0))(E1 にはアーモンドと入力されているとします)
=index(C1:C11,,8)=10 (C8 の参照)
2 番目の例が列番号を省略した場合。行番号を省略する場合は最後の引数なので単に, は要らないが、列番号を省略する場合にはその後に行番号が要るので,, とする。これは他の関数でも同様。
また、2 番目の例でmatch 関数を使っているので参考に。E1 の値はアーモンドでなくても可能。他のセルをさらに参照していてもいいし、計算によってカシューナッツになったりピーナッツになったりしてもいい。このように動的な使い方をするとExcel 関数は使い道が広がる。
最終更新:2007年06月25日 13:11