>=index(検索範囲,match(true,検索範囲=検索値,0))
について
数式を分解すると
「INDEX関数」と「MATCH関数」になります。
この中で「MATCH関数」は、
「INDEX関数」の第1引数の「検索範囲」の相対位置を求めるものです。
「MATCH関数」は、一般的に
=MATCH(検索値,検索範囲,[照合型])
というように説明しています。
この一般的な@「MATCH(検索値,検索範囲,[照合型])」と
A「match(true,検索範囲=検索値,0)」の違いを理解したい
ということでしょうか?
@Aどちらも、検索範囲内の相対位置を求めめているのですが、
基本的な違いは、次の通りと思います。
検索範囲は、配列です。・・・この点は理解していますよね?
@の場合は、「検索範囲」というセル範囲を指定しているから、「配列」です。
Aの場合、「検索範囲」は「配列」ですが、「検索範囲=検索値」は配列にはなっていません。
そこで、この部分を配列にするには、「{検索範囲=検索値}」とする必要があります。
試しに、次を実行してみてください。
セルA1からA4に
a
b
c
b
を入力します。
次に、セルB1=B4に
=A1="b"
=A2="b"
=A3="b"
=A4="b"
と数式を入力してみてください。
B1:FALSE
B2:TRUE
B3:FALSE
B4:TRUE
と表示されるはずです。
次にセルC1〜C4を選択しておいて
C1に
=A1:A4="b"
と入力し、[Ctrl]+[Shift]+[Enter]で確定します。→配列関数にします。
B1〜B4の結果と同じになると思います。
任意のセルに
=MATCH(TRUE,C1:C4,0)と入力します。結果:「2」が返ります。
それを
「C1:C4」を「A1:A4="b"」に置換えで、[Ctrl]+[Shift]+[Enter]で確定します。
こちらも「2」が返ります。
この説明で、おわかりでしょうか?