プロが教えるわが家の防犯対策術!

excel関数でindexとmatchについてですが、各々何を求める関数でどのように組合せて使うのか分かりません。具体的に教えていただけると助かるのですが、よろしくお願いします。

A 回答 (4件)

Index関数 範囲を指定して 上から何行目、左から何列目 とセルを指定して表示することが出来ます。



Macth関数 行や列を指定して 検索値を検索して 上から何行目(あるいは左から何列目)と数値を
得ることが出来ます。

これを組み合わせると、範囲の中で 縦方向に検索させたり、横方向に検索させてりしてセルを表示できます。

Vlookup関数を理解していただいているのであれば
Vlookup関数に似た使い方ができますね。但し
Vlookup関数は 一番左しか検索の対象にできませんが
Index関数とMatch関数を組み合わせることで、検索する列を自由にできます。
またMatch関数は 列方向にも検索できますので
縦横自由に検索してセルを表示できる関数が作れます。
    • good
    • 0

 MATCH関数は、検索したいデータが選択範囲の中で何番目のセルにあるか、を返します。


 INDEX関数は、選択範囲の中で指定したところのデータを返します。

 これらを組み合わせると、一覧表のようなデータで、「ある列にある○○というデータと同じ行にある他の列のデータ」を得ることができます。

 「具体的に」ということですので、INDEX と MATCH の使い方を説明したページを紹介します。

http://www.d3.dion.ne.jp/~jkondou/excelvba/GA2.htm
http://pc.nikkeibp.co.jp/pc21/tech/excel36/26/
    • good
    • 0

 INDEX関数には2通りの使い方があり、


1つ目の使い方は、

INDEX(配列,行番号,列番号)

という形式で使うやり方で、
設定した配列中において、指定した行番号と列番号に該当する位置にあるセルを、参照したデータを求めます。
 例えば、セルに次の様に入力しますと、

=INDEX({11,12,13,14;21,22,23,24;31,32,33,34},3,2)

そのセルには

32

と表示されます。

 2つ目の使い方は、

INDEX(セル範囲,行番号,領域番号)

という形式で使うやり方で、
設定した複数のセル範囲において、領域番号で指定したセル範囲中の指定した行番号と列番号に該当する位置にあるセルを、参照したデータを求めます。
 尚、設定するセル範囲が1つだけの場合は、領域番号を省略して、

INDEX(セル範囲,行番号)

という形式にしても構いません。
 例えば、次の様にデータが存在している場合

   A列 B列 C列 D列
1行目 AA  BA  CA  DA
2行目 BA  BB  BC  BD
3行目 CA  CB  CC  CD
4行目 DA  DB  DC  DD
5行目 EA  EB  EC  ED

セルに次の様に入力しますと、

=INDEX((A1:D2,B3:C5),3,2,2)

そのセルには

EC

と表示されます。
    • good
    • 0

 回答番号:ANo.3の続きです。

 MATCH関数は、

MATCH(検査値,検査範囲,照合の型)

という形式で使われ、照合の型で指定した条件に従って検査範囲に指定したセル範囲を検索し、検査値と一致したデータが存在するセルの位置を表す数値を求める関数です。
 照合の型は、検査値の検索の仕方を数字で指定するもので、
照合の型に0を指定すると、検査値に完全に一致するデータのみが、検索の対象になります。
 この場合、検査範囲のデータが順序良く並んでいる必要はありません。

 例えば、
A1セルに「8」
A2セルに「7」
A3セルに「6」
A4セルに「5」
A5セルに「9」
A6セルに「10」
A7セルに「15」

という具合にデータが入力されている場合、セルに次の様に入力しますと、

=MATCH(5,A3:A6,0)

5の値はA3から数えて2つ目のA5セルに存在しますから、そのセルには

2

と表示されます。

 照合の型に1を指定するか、若しくは照合の型を省略して、

MATCH(検査値,検査範囲)

という形式で入力しますと、検査値以下の最大の値になるデータが、検索の対象になります。
 この際、検査範囲のデータは、昇順で並んでいる必要があります。
 昇順とは、
数値の場合は下へ行くほど大きな値になっている事で、
アルファベットの場合は上からABC順に、
かな文字の場合は、あいうえお順に並んでいる事を言います。
 先程の例で、セルに次の様に入力しますと、

=MATCH(12,A4:A7)

12という値はA4~A7の範囲には存在しませんから、12以下の最大の数である10が存在するA6セルは、A4から数えて3つ目にありますから、その数式を入力したセルには

3

と表示されます。

 又、セルに次の様に入力しますと、

=MATCH(5,A2:A7)

A2とA3の間は昇順で並んでいないため、正しい値を表示する事は出来ません。

 照合の型に-1を指定すると、検査値以上の最小の値になるデータが、検索の対象になります。
 この際、検査範囲のデータは、降順で並んでいる必要があります。
 降順とは、
数値の場合は下へ行くほど小さな値になっている事で、
アルファベットの場合は上からZYX順に、
かな文字の場合は、んをわろれ順に並んでいる事を言います。
 先程の例で、セルに次の様に入力しますと、

=MATCH(5.3,A1:A4,-1)

5.3という値はA1~A4の範囲には存在しませんから、5.3以上の最小の数である6が存在するA3セルは、A1から数えて3つ目にありますから、その数式を入力したセルには

3

と表示されます。

 又、セルに次の様に入力しますと、

=MATCH(6.3,A1:A5,-1)

A4とA5の間は降順で並んでいないため、正しい値を表示する事は出来ません。


 詳しくは、

メニューの[ヘルプ]
  ↓
[Microsoft Excelヘルプ]

の順番でクリックすると現れる、Officeアシスタントが、
「何について調べますか?」
と尋ねて来ますから、
ふきだしの中に知りたい関数の名前である

INDEX

或いは

MATCH

と入力してから、ふきだしの中の[検索]ボタンをクリックしてみて下さい。
 すると、ふきだしの中に幾つかの選択肢が現れますから、入力した関数名と同じものを選んでクリックして下さい。
 すると、「Microsoft Excelのヘルプ」ウィンドウが開いて説明が表示されます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!