如何从单个单元格的多个值中获取最大值(多日期场景)
如何从单个单元格的多个值中获取最大值(多日期场景)
当然可以不用折腾多工作表!直接用嵌套公式就能一步搞定,我给你捋清楚怎么操作:
核心思路是把拆分后的文本日期转换成Excel能识别的日期数值,再用MAX函数取最大值,具体公式如下:
=MAX(--TEXTSPLIT(A1,"; "))
公式拆解:
TEXTSPLIT(A1,"; "):把A1单元格里的内容按「分号+空格」拆分,得到多个文本格式的日期。如果你的日期之间只有分号没有空格,把分隔符改成";"就行。--:双重负号的作用是把文本格式的日期转换成Excel内部的日期数值(Excel里日期本质是数值,比如2024/1/1对应45292),这样MAX才能正确比较大小。MAX(...):从转换后的日期数值里选出最大的那个,最终会自动显示成你设置的日期格式。
额外优化(处理无效值):
如果单元格里可能存在空白内容或者无效的日期文本,可以加个IFERROR过滤掉错误值,避免公式报错:
=MAX(IFERROR(--TEXTSPLIT(A1,"; "),0))
这里把无效值转换成0,因为正常日期对应的数值都是正数,不会影响MAX取到正确的最大日期。
举个例子:如果A1单元格内容是"2023-05-10; 2024-01-15; 2022-09-01",用第一个公式就能直接返回2024-01-15,完全不用额外工作表~
备注:内容来源于stack exchange,提问作者Beer_en_thu_si_asT




