Excel如何基于最新日期与相同单元格值高亮整行?
用Excel条件格式实现「相同分组下最新日期行高亮」
当然可以用条件格式轻松搞定,完全不需要编写VBA代码!我来一步步教你实现你要的效果:
操作步骤
1. 选中目标范围
假设你的数据是从第1行到第8行(如果有表头就从数据起始行开始,比如第2行),要高亮整行的话,直接选中对应的行(比如1:8),或者选中包含数据的单元格区域(比如A1:B8)。
2. 新建条件格式规则
点击「开始」选项卡 → 找到「条件格式」→ 选择「新建规则」→ 在弹出的窗口里选「使用公式确定要设置格式的单元格」。
3. 输入自定义公式
在公式输入框里粘贴以下公式:
=$B1=MAX(IF($A:$A=$A1,$B:$B))
🔔 注意:如果你的数据从第2行开始(第1行是表头),把公式里的
$B1和$A1改成$B2和$A2就行。
输入完公式后,点击「格式」按钮,挑选你想要的高亮样式(比如填充色),确认后完成设置。
公式原理拆解
我给你解释下这个公式为什么能生效:
$A:$A=$A1:遍历整个A列,找出所有和当前行A列值相同的单元格,返回一个由TRUE/FALSE组成的数组;IF($A:$A=$A1,$B:$B):用IF筛选出对应A列值相同的那些行的B列日期,形成一个仅包含目标分组日期的数组;MAX(...):从这个日期数组里提取最大(也就是最新)的日期;$B1=MAX(...):判断当前行的B列日期是否等于这个最大值,若是则触发高亮格式。
验证你的示例数据
用这个公式的话:
- A列值为
Y的行里,最新日期是24-07-2018(第7行),所以第7行高亮; - A列值为
X的行里,最新日期是25-09-2018(第8行),所以第8行高亮; - A列值为
Z的行里,最新日期是01-04-2018(第6行),所以第6行高亮;
完美匹配你想要的结果!
💡 小技巧:如果你的数据量很大,把公式里的整列引用
$A:$A改成实际的数据范围(比如$A$1:$A$8),能让公式计算更高效哦。
内容的提问来源于stack exchange,提问作者Focha




