如何在谷歌电子表格中检查整数范围内的值



例如,整数范围用逗号分隔,例如"4450-44499、4700-4805、9920-9959"。如何检查整数是否在此范围内?

粘贴值:
  • 小区A1=4450-4499, 4700-4805, 9920-9959
  • 小区B1=4450或任意数字

使用这个公式:

=IFERROR(JOIN("",QUERY(
{ArrayFormula(REGEXEXTRACT(TRANSPOSE(SPLIT(A1,", ")),"(d+)")*1),
ArrayFormula(REGEXEXTRACT(TRANSPOSE(SPLIT(A1,", ")),"-(d+)")*1)},
"where Col1 <= "&B1&" and Col2 >= "&B1&"",0))*1,0)>0

将返回true,因为44504450-4499范围内。

此函数获取一个数字和范围并执行检查,但请注意,它没有任何预防措施,因此提供的数据必须符合您提供的格式:

function inRange(number, range) {
  range = range.split(", ");
  range = range.map(function(x) {return x.split("-")});
  for (var i in range) {
    if (number >= range[i][0] && number <= range[i][1]) {
      return true;
    }
  }
  return false;
}

最新更新