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

如何将Excel表格按指定星期几筛选并提取唯一日期关联数据?

解决Excel中筛选指定星期几的唯一日期关联数据问题

核心解决方案

你可以通过嵌套UNIQUE和FILTER函数,或结合LET函数拆分逻辑,实现需求。以下是几种可行的公式:

方案1:筛选指定星期几的唯一日期对应行(保留所有列)

=UNIQUE(FILTER(Member, Member[Day]=H1), "No results")

先筛选出所有属于指定星期几(H1为下拉菜单选中的星期值)的数据,再通过UNIQUE提取唯一日期对应的行(默认保留每个日期首次出现的关联数据)。

方案2:筛选指定星期几的唯一日期,并仅显示特定列(匹配你原公式的列选择)

=FILTER(UNIQUE(FILTER(Member, Member[Day]=H1)), {0,0,1,1,1,1}, "No results")

在方案1的基础上,外层FILTER通过{0,0,1,1,1,1}参数只保留第3到第6列的数据,和你原公式的列筛选逻辑一致。

方案3:分步逻辑(更易调试)

用LET函数定义中间变量,拆分逻辑更清晰:

=LET(
    TargetDates, FILTER(Member[Date], Member[Day]=H1),
    UniqueTargetDates, UNIQUE(TargetDates),
    FILTER(Member, ISNUMBER(XMATCH(Member[Date], UniqueTargetDates)), "No results")
)
  • TargetDates:提取所有属于指定星期几的日期
  • UniqueTargetDates:从这些日期中提取唯一值
  • 最后筛选出Member表中日期在UniqueTargetDates里的所有行

方案4:仅显示特定列的分步写法

=LET(
    TargetDates, FILTER(Member[Date], Member[Day]=H1),
    UniqueTargetDates, UNIQUE(TargetDates),
    FilteredRows, FILTER(Member, ISNUMBER(XMATCH(Member[Date], UniqueTargetDates)), "No results"),
    FILTER(FilteredRows, {0,0,1,1,1,1}, "No results")
)

为什么原操作无法直接结合?

你之前的两个公式是独立执行的:一个筛选星期几数据,一个提取全局唯一日期。要结合的话,必须先限定日期的范围为指定星期几,再对这个范围内的日期取唯一值,最后关联对应数据——上面的公式就是实现了这个逻辑闭环。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 19:32:54