粘贴值:
例如,整数范围用逗号分隔,例如"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,因为4450
在4450-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;
}