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

如何通过Excel公式从固定格式的Timesheet Notes列提取工作日名称生成Days worked列(不使用宏)

从Timesheet Notes提取工作日名称的Excel公式方案

我来给你分享几个不用宏的纯Excel公式方案,帮你从固定格式的Timesheet Notes里提取对应的工作日名称。虽然你说Notes是软件自动生成的格式固定,但不同软件输出的日期格式可能略有差异,我先基于几种最常见的场景来给你方法,你可以根据实际情况调整。


场景1:Notes里包含多个用逗号/空格分隔的标准日期

比如Notes内容是类似 Worked on 2024-05-20, 2024-05-21, 2024-05-22 这种,日期都是标准的可识别格式,且用逗号或空格分隔。

假设Notes在A2单元格,要在B2生成拼接好的工作日名称,用这个公式:

=TEXTJOIN(", ", TRUE, TEXT(FILTERXML("<t><s>"&SUBSTITUTE(SUBSTITUTE(A2," ", "</s><s>"),",","</s><s>")&"</s></t>","//s[number(.)=number(.)]"),"dddd"))

公式拆解:

  • SUBSTITUTE(A2," ", "</s><s>") + SUBSTITUTE(...,",","</s><s>"):把原文本里的空格和逗号都替换成XML标签,把所有内容拆成独立的节点
  • FILTERXML(..., "//s[number(.)=number(.)]"):筛选出能转换成数字的节点(Excel里日期本质是数字,所以这一步会自动提取出所有日期字符串)
  • TEXT(..., "dddd"):把日期转换成完整的英文工作日名称(比如Monday;如果要缩写用ddd,中文版本换成aaaa会显示星期一)
  • TEXTJOIN(", ", TRUE, ...):把所有工作日名称用「逗号+空格」拼接成一串

场景2:Notes带固定前缀,日期在前缀之后

比如Notes内容是类似 Timesheet Record: 2024/05/20, 2024/05/21 这种,前面有固定的描述前缀。

只需要先提取前缀之后的内容,再套用上面的逻辑:

=TEXTJOIN(", ", TRUE, TEXT(FILTERXML("<t><s>"&SUBSTITUTE(SUBSTITUTE(MID(A2,FIND(":",A2)+1,LEN(A2))," ", "</s><s>"),",","</s><s>")&"</s></t>","//s[number(.)=number(.)]"),"dddd"))

关键调整:

MID(A2,FIND(":",A2)+1,LEN(A2)) 这部分是找到冒号的位置,提取冒号后面的所有内容(也就是纯日期区域),后续步骤和场景1一致。如果你的前缀不是用冒号分隔,把FIND(":",A2)里的冒号换成前缀的结束字符就行。


场景3:Notes里只有单个日期

如果每条Notes只对应一个日期,比如 Work Date: 2024-05-20,用更简单的公式就行:

=TEXT(DATEVALUE(MID(A2,MAX(FIND({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))-9,10)),"dddd")

公式拆解:

  • MAX(FIND({0,1,2,3,4,5,6,7,8,9},A2&"0123456789")):找到文本里最后一个数字的位置(确保定位到日期的末尾)
  • MID(..., -9,10):从末尾往前数10位,提取完整的10位标准日期(比如yyyy-mm-dd格式)
  • DATEVALUE(...):把日期字符串转换成Excel可识别的日期格式,再用TEXT转成工作日名称

额外注意事项:

  1. 如果你的日期是dd/mm/yyyy或mm/dd/yyyy格式,DATEVALUE会根据Excel的区域设置自动识别;要是识别出错,可以用DATE函数手动拆分,比如针对20/05/2024:
    =DATE(RIGHT(提取的日期字符串,4),MID(提取的日期字符串,4,2),LEFT(提取的日期字符串,2))
    
  2. 想要中文工作日名称的话,把公式里的dddd换成aaaa(Excel中文版本),或者用"星期aaa"会直接显示星期一这种格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 04:07:31