如何在Google Sheet文档中筛选指定列内的double类型数值
Google Sheets 指定列double类型数值校验实现方案
实现思路
不需要把目标列数据导出到其他工作表,直接用Google Sheets内置的动态数组函数即可在内存中生成校验数组,和C++写数组校验的逻辑一致,只是语法适配了表格的函数规则。
快速实现步骤
- 先确定待校验的目标列范围,示例默认取A列A2到A100的有效数据区域,你可以按需替换成自己的列范围
- 生成全量校验结果数组(直接返回每一行是否符合double要求),在空白单元格输入如下公式即可自动溢出所有校验结果:
=BYROW(A2:A100, LAMBDA(val, IF(AND(ISNUMBER(val), NOT(ISERROR(val/1))), "是double类型", "非double类型"))) - 直接提取所有符合要求的double值组成纯数值数组,使用如下公式即可返回仅包含合格double值的动态数组:
=FILTER(A2:A100, ISNUMBER(A2:A100), NOT(ISERROR(A2:A100/1)))
规则自定义说明
- 如果要过滤掉整数类型的数值、仅保留带小数位的double值,在判断条件中追加
MOD(val,1)<>0即可,示例:=FILTER(A2:A100, ISNUMBER(A2:A100), NOT(ISERROR(A2:A100/1)), MOD(A2:A100,1)<>0) - 如果需要限制数值范围,比如要求数值在1.5~1000.5之间,追加对应的范围判断条件即可:
=FILTER(A2:A100, ISNUMBER(A2:A100), NOT(ISERROR(A2:A100/1)), A2:A100>=1.5, A2:A100<=1000.5)
内容的提问来源于stack exchange,提问作者Kodiaq
相关产品推荐
相关产品推荐

