If statement 如果连续数字小于

If statement 如果连续数字小于,if-statement,google-sheets,google-sheets-formula,array-formulas,google-sheets-query,If Statement,Google Sheets,Google Sheets Formula,Array Formulas,Google Sheets Query,我在a列中有一组数据,如下所示: A B 150 155 200 140 122 250 299 如果有两个或两个以上的连续数字小于B1(155)中的值,我希望得到一个“是”的声明,到目前为止,我的公式是: =if(frequency(FILTER(A1:A,A1:A<B1),A1:A=2)>0,"Yes","No") =if(频率(滤波器(A1:A,A1:A0,“是”、“否”) 但是这似乎不起作用,有什么线索吗?试试:

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

A       B
150    155
200
140
122
250
299
如果有两个或两个以上的连续数字小于B1(155)中的值,我希望得到一个“是”的声明,到目前为止,我的公式是:

=if(frequency(FILTER(A1:A,A1:A<B1),A1:A=2)>0,"Yes","No")
=if(频率(滤波器(A1:A,A1:A0,“是”、“否”)
但是这似乎不起作用,有什么线索吗?

试试:

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

如果你想知道,你可以用频率来做这些,但我认为频率并不是你期望的那样。第一个参数是你正在分组的数据,第二个参数是你用来分组数据的仓位范围,或切割点列表。所以窍门是使用值=155来给出另一个列表f行编号(切割点)如下所示:

=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"))
=阵列公式(如果最大(
频率(
如果((A:A=B1)*(A:A“”),第(A:A)行)
)>=2,
“是”、“否”))


除了在Excel中工作以外,没有什么特别的优势。

有可能生成一个1的字符串,它太长,不能转换成一个数字,因此可以考虑= ARRAY公式(If(max)(Lead)(Stand(查询)(IF(A1:A))*(A1:A1,“yes”,“否”)。
=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"))