Google 如果连续数字小于,则工作表计数

Google Sheets Count if Consecutive numbers are Less than

我在 A 列中有一组数据,如下所示:

A       B
150    155
200
140
122
250
299

如果有 2 个或更多连续数字小于 B1 中的值 (155),我想得到一个“是”的声明,到目前为止我的公式是:

=if(frequency(FILTER(A1:A,A1:A<B1),A1:A=2)>0,"Yes","No")

但这似乎不起作用,有什么线索吗?

尝试:

=ARRAYFORMULA(IF(MAX(SUBSTITUTE(SPLIT(QUERY(
 IF((A1:A<>"")*(A1:A<B1), 1, 0),, 9^9), 0), " ", )*1)>1, "yes", "no"))


B1以上使用:

=ARRAYFORMULA(IF(MAX(SUBSTITUTE(SPLIT(QUERY(
 IF(A1:A>B1, 1, 0),, 9^9), 0), " ", )*1)>1, "yes", "no"))

如果您想知道,您可以使用 Frequency 来完成这些操作,但我认为 Frequency 的工作方式并不像您期望的那样。第一个参数是您要分组的数据,第二个参数是您用于对数据分组的 bin 范围或切割点列表。所以诀窍是使用值 <155 给出行号列表(数据),值 >=155 给出另一个行号列表(切割点),如下所示:

=ArrayFormula(if(Max(
 frequency(
  if((A:A<B1)*(A:A<>""),row(A:A)),
  if((A:A>=B1)*(A:A<>""),row(A:A)))
 )>=2,
"Yes","No"))

除了在 Excel 中也适用之外,这样做没有什么特别的优势。