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

如何用Excel公式按指定日期输出公司与基金组合及对应值(无数据填0)

问题与解决方案

原始数据

CompFundDateValue
AX30/09/202212
BX30/09/202215
EX30/09/202231
AX31/12/202210
BX31/12/202220
CX31/12/202215
DY31/12/202222

需求

仅使用公式(禁止宏、筛选或手动数据操作),针对指定日期(如单元格F1中的31/12/2022),输出所有Comp与Fund的唯一组合,对应值为该日期的记录值,无记录则返回0。示例输出如下:

CompFundValue
EX0
AX10
BX20
CX15
DY22

用户曾尝试获取Comp与Fund的唯一组合,但未达到预期效果。


解决方案

1. 提取Comp与Fund的唯一组合

假设原始数据位于A2:D8区域(表头在A1:D1),在空白区域(如H2)输入以下动态数组公式,直接提取唯一组合:

=UNIQUE(CHOOSECOLS(A2:D8,1,2))

公式会自动生成两列结果,对应所有不重复的Comp-Fund组合,手动添加表头Comp和Fund即可。

2. 匹配指定日期的Value(无记录返回0)

动态数组版本(一次性生成所有值)

在Value列起始单元格(如J2)输入:

=BYROW(UNIQUE(CHOOSECOLS(A2:D8,1,2)),LAMBDA(row,IFERROR(XLOOKUP(INDEX(row,1)&INDEX(row,2)&$F$1,A2:A8&B2:B8&D2:D8,C2:C8,0),0)))

兼容旧版本Excel的逐行公式

在J2输入后下拉填充:

=IFERROR(XLOOKUP(H2&I2&$F$1,A2:A8&B2:B8&D2:D8,C2:C8,0),0)

公式说明

  • UNIQUE(CHOOSECOLS(...)):精准提取A、B列的所有唯一Comp-Fund组合,解决获取唯一组合的问题。
  • XLOOKUP(...):将Comp、Fund、指定日期合并为匹配键,在原始数据中查找对应记录,找到则返回Value,未找到则返回0;IFERROR确保无记录时返回0。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 16:23:19