4

指定された値を (同じ列の) 後続の行と比較し、値が初めて変化する行までの範囲を返します。

Example:
   A
1  cat
2  cat
3  cat
4  dog
5  cat

返される範囲は A1:A3 です。

4

2 に答える 2

4

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)
于 2012-11-02T04:04:43.847 に答える
1

これは配列数式として機能します。ctrl数式バーで+ shift+を押しenterて評価します。この非常に単純なケースで動作するようにテストしました。より複雑なケースについては言えません。

=INDIRECT("A1:A" & MAX(ROW(A1:A5)*(A1:A5="cat")*(A2:A6<>"cat")))

編集:値ではなく範囲を本当に返したい場合は、間接を削除するだけで、他のすべてをその中に残す必要があります。

于 2012-11-02T02:54:07.910 に答える