Excel中如何提取特定名称对应的全部数字数据?
提取特定名称对应全部数字的方法
方法1:用FILTER函数(Excel 365/2021及以上版本)
这是最简便的实现方式,直接筛选符合条件的所有数据。
假设名称列是A列,数字列是B列,要提取的特定名称为"张三",在任意空白单元格输入公式:
=FILTER(B:B, A:A="张三")
- 逻辑说明:
A:A="张三"会生成一个布尔数组,标记A列中等于目标名称的行;FILTER函数依据这个数组,返回B列对应行的所有数字。 - 如果需要提取去重后的数字,将FILTER嵌套进UNIQUE即可:
=UNIQUE(FILTER(B:B, A:A="张三"))
方法2:旧版Excel用INDEX+SMALL+IF数组公式
如果你的Excel版本不支持FILTER,用数组公式实现:
在第一个结果单元格(比如D2)输入公式:
=INDEX(B:B, SMALL(IF(A:A="张三", ROW(A:A)), ROW(A1)))
输入完成后按Ctrl+Shift+Enter触发数组公式,然后下拉填充单元格,直到出现#NUM!停止,前面的结果就是目标名称对应的所有数字。
- 逻辑说明:
IF(A:A="张三", ROW(A:A))返回所有名称匹配的行号;SMALL按顺序取出这些行号;INDEX根据行号从B列提取对应数字。
关于UNIQUE函数的问题
UNIQUE本身仅用于提取区域内的唯一值,不具备条件筛选能力,所以单独使用无法实现“针对特定名称提取数字”的需求,必须和筛选类函数(比如FILTER)搭配才行。
内容的提问来源于stack exchange,提问作者Reza Rayej
相关产品推荐
相关产品推荐

