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

如何在Excel中基于日期和日期时间两列进行排名

基于日期时间与日期列的Excel分组排名公式

从你提供的数据截图来看,数据包含仅日期的date列和带时分秒的datetime列,需求是在同一date分组内,按datetime从早到晚的顺序生成排名(即每个日期下最早的记录排1,依次递增)。以下是适用的Excel公式:

一、传统兼容公式(适配所有Excel版本)

假设数据从第2行开始:date列在B列,datetime列在A列,排名结果放在C列。在C2单元格输入以下公式后,按Ctrl+Shift+Enter确认(数组公式),再下拉填充:

=SUMPRODUCT(($B$2:$B$100=B2)*(A2<$A$2:$A$100))+1

公式说明:$B$2:$B$100=B2筛选出当前行同日期的所有记录,A2<$A$2:$A$100统计比当前datetime晚的记录数,加1后得到当前记录在同日期组内的排名(最早的记录统计数为0,排名为1)。

二、动态数组公式(适配Excel 365/2021及以上)

无需下拉填充,公式会自动溢出到整列。在C2单元格输入:

=BYROW(A2:A100,LAMBDA(x,SUMPRODUCT((B2:B100=INDEX(B2:B100,ROW(x)-ROW(A2)+1))*(x>A2:A100))+1))

公式说明:BYROW遍历每一行的datetime,结合SUMPRODUCT精准统计同日期组内比当前datetime晚的记录数,加1生成分组排名。

三、处理重复datetime的平均排名公式

如果同一日期下存在完全相同的datetime,需要生成平均排名,使用以下数组公式(按Ctrl+Shift+Enter确认):

=SUMPRODUCT(($B$2:$B$100=B2)*(A2<$A$2:$A$100))+(SUMPRODUCT(($B$2:$B$100=B2)*(A2=$A$2:$A$100))+1)/2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 22:35:35