从含客户姓名与购买日期的累计表中提取每月唯一客户
解决方法
方法1:Excel 365/2021 动态数组公式
直接在空白单元格输入以下公式,自动返回去重后的结果:
=UNIQUE(HSTACK(A2:A8, TEXT(B2:B8, "mm-yyyy")))
公式说明:
TEXT(B2:B8, "mm-yyyy"):将原始日期转换为「月-年」格式(如01-06-2022转为06-2022)HSTACK(A2:A8, ...):将客户姓名列与转换后的年月列合并为一个二维数组UNIQUE(...):对合并后的数组去重,保留唯一的「客户-年月」组合
方法2:旧版Excel(无动态数组)数组公式
假设结果从D2、E2开始:
- D2单元格输入以下公式,按
Ctrl+Shift+Enter确认(数组公式):
=INDEX($A$2:$A$8, MATCH(0, COUNTIFS($D$1:D1, $A$2:$A$8, $E$1:E1, TEXT($B$2:$B$8,"mm-yyyy")), 0))
- E2单元格输入以下公式,同样按
Ctrl+Shift+Enter确认:
=TEXT(INDEX($B$2:$B$8, MATCH(D2&TEXT(E2,"mm-yyyy"), $A$2:$A$8&TEXT($B$2:$B$8,"mm-yyyy"), 0)),"mm-yyyy")
- 下拉D2、E2的公式,直到出现错误值,删除错误行即可。
方法3:Power Query 可视化操作(适合大量数据)
- 选中母表数据,点击「数据」选项卡 → 「从表格/区域」导入Power Query编辑器
- 点击「添加列」→ 「自定义列」,输入公式:
= Date.ToText([column2], "MM-yyyy")
- 选中原始姓名列和新生成的年月列,点击「主页」→ 「删除重复项」
- 点击「关闭并上载」,将结果导出到工作表
内容的提问来源于stack exchange,提问作者hossam kariem
相关产品推荐
相关产品推荐

