如何用动态数组筛选另一动态数组并输出动态数组结果?
可行,用Excel动态数组公式即可实现
完全可以达成需求,使用以下动态数组公式就能得到符合要求的输出结果:
=FILTER(输入区域, BYROW(输入区域, LAMBDA(x, SUMPRODUCT(--ISNUMBER(SEARCH(筛选条件区域, x)))>0)), "无匹配结果")
公式说明:
- 将
输入区域替换为你的输入动态数组所在范围(比如示例中的A2#) - 将
筛选条件区域替换为C列的筛选条件动态数组范围(比如示例中的C2#) BYROW+LAMBDA:逐个遍历输入数组的每一项SEARCH(筛选条件区域, x):检查当前项是否包含任一筛选条件,匹配返回位置,不匹配返回错误值ISNUMBER+--:把结果转换为1(匹配)或0(不匹配),SUMPRODUCT求和后判断是否大于0,确认当前项是否符合筛选要求FILTER:仅保留符合条件的项,无匹配结果时返回指定提示文本
该公式会自动适配输入数组和筛选条件数组的元素数量变化,输出结果同样是动态数组,会随输入内容自动调整大小。
内容的提问来源于stack exchange,提问作者Unrequest
相关产品推荐
相关产品推荐

