You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel创建异常报告求助:筛选未达成目标人员

解决Excel未达成目标人员的异常报告问题

原公式的问题

  • 公式逻辑错位:第一个VLOOKUP是用目标表姓名查实际业绩,这部分没问题,但第二个VLOOKUP用实际表姓名查目标业绩,会导致姓名匹配错位(比如Katie的实际业绩可能和其他人的目标业绩做了错误对比),从而返回错误结果。
  • 未正确处理数组结果:旧版Excel中这类数组公式需要按Ctrl+Shift+Enter确认,否则无法正常返回数组,还会出现大量空白行。

正确解决方案

方案1:Excel 365/2021(推荐,自动跳过空白行)

用FILTER函数直接筛选出未达成目标的人员,无需处理空白行:

=FILTER(Goal!A2:A6, VLOOKUP(Goal!A2:A6, Sales!A2:B6, 2, FALSE) < Goal!B2:B6)

如果习惯用XLOOKUP(比VLOOKUP更灵活),可以用:

=FILTER(Goal!A2:A6, XLOOKUP(Goal!A2:A6, Sales!A2:A6, Sales!B2:B6) < Goal!B2:B6)
  • 核心逻辑:遍历目标表的每一位人员,匹配其实际业绩后和目标业绩对比,自动筛选出实际业绩低于目标的人员,直接返回无空白的结果列表。

方案2:旧版Excel(无动态数组功能)

使用INDEX+SMALL+IF组合数组公式,按以下步骤操作:

  1. 在结果区域的第一个单元格(比如C2)输入公式:
=IFERROR(INDEX(Goal!$A$2:$A$6, SMALL(IF(VLOOKUP(Goal!$A$2:$A$6, Sales!$A$2:$B$6, 2, FALSE) < Goal!$B$2:$B$6, ROW(Goal!$A$2:$A$6)-ROW(Goal!$A$2)+1), ROW(A1))), "")
  1. 按Ctrl+Shift+Enter确认数组公式(公式会自动带上大括号{},不要手动输入)。
  2. 下拉填充公式,直到出现空白单元格,此时显示的就是所有未达成目标的人员,无多余空白行。
  • 核心逻辑:用IF标记所有未达成目标的行号,SMALL按顺序提取有效行号,INDEX取出对应姓名,IFERROR避免超出范围时返回错误值。

内容的提问来源于stack exchange,提问作者pixiesweet44

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 11:26:28