指定された値を (同じ列の) 後続の行と比較し、値が初めて変化する行までの範囲を返します。
Example:
A
1 cat
2 cat
3 cat
4 dog
5 cat
返される範囲は A1:A3 です。
指定された値を (同じ列の) 後続の行と比較し、値が初めて変化する行までの範囲を返します。
Example:
A
1 cat
2 cat
3 cat
4 dog
5 cat
返される範囲は A1:A3 です。
cell に cat があると仮定するとc1
、次の式は最初の連続した一致範囲を返します。ctrl+ shift+で入力enter
=COUNTIF(OFFSET(A1:A5,MATCH(C1,A1:A5,0)-1,0,MATCH(TRUE,OFFSET(A1:A5,MATCH(C1,A1:A5,0),0)<>C1,0)),"cat")
データが常に A1 で始まり、次の値までずっと最初の値と一致する範囲全体が必要な場合は、次の配列数式を使用します ( ctrl+ shift+で入力しますenter)。
=OFFSET($A$1,0,0,MATCH(TRUE,A:A<>A1,0)-1)
これは配列数式として機能します。ctrl数式バーで+ shift+を押しenterて評価します。この非常に単純なケースで動作するようにテストしました。より複雑なケースについては言えません。
=INDIRECT("A1:A" & MAX(ROW(A1:A5)*(A1:A5="cat")*(A2:A6<>"cat")))
編集:値ではなく範囲を本当に返したい場合は、間接を削除するだけで、他のすべてをその中に残す必要があります。