如何在Excel中查找同名分组的最早日期与第二早日期
Excel按名称分组提取最早、第二早日期
示例数据
| 序号 | Name | Created |
|---|---|---|
| 1 | QWS2000 | 2/2/22 |
| 2 | QWS2000 | 1/4/22 |
| 3 | QWS200 | 7/6/22 |
| 4 | AZ70 | 1/3/22 |
| 5 | ASZ70 | 4/5/22 |
下面提供两种适合300条数据的解决方案:
方法一:函数公式法
适合熟悉Excel函数的用户,操作步骤:
提取唯一名称列表
在空白列(比如D2单元格)输入公式:=UNIQUE(A:A)回车后自动生成所有不重复的名称。
提取分组最早日期
在E2单元格(对应D2的名称)输入公式:=MINIFS(B:B,A:A,D2)下拉填充即可得到每个名称的最早日期。
提取分组第二早日期
在F2单元格输入公式:=IFERROR(SMALL(IF(A:A=D2,B:B),2),"无")回车后下拉填充。若某个名称仅1条记录,会显示「无」,避免出现错误值。
方法二:Power Query法
适合批量处理或后续需更新数据的场景:
导入数据到Power Query
选中数据区域 → 点击「数据」选项卡 → 「从表格/区域」(旧版Excel找「获取和转换」组对应选项),确认数据含表头后进入Power Query编辑器。按名称分组提取日期
- 点击「转换」选项卡 → 「分组依据」。
- 在弹窗中设置:
- 「分组依据」选择「Name」;
- 点击「添加分组」,第一个分组:新列名填「最早日期」,操作选「自定义」,公式写:
List.Min([Created]) - 再添加一个分组:新列名填「第二早日期」,操作选「自定义」,公式写:
try List.Min(List.RemoveFirstN(List.Sort([Created]),1)) otherwise null
- 点击确定,即可得到每个名称的最早和第二早日期。
加载回Excel
点击「主页」选项卡 → 「关闭并上载」,结果会生成在新工作表中。
内容的提问来源于stack exchange,提问作者digitalsunny
相关产品推荐
相关产品推荐

