如何将PowerAutomate审批日期戳转换为易读格式
一、在PowerAutomate写入前修复(推荐从根源解决)
你的日期字段出现重复的ISO格式字符串(如2024-08-30T12:58:05Z2024-08-30T12:58:05Z),大概率是工作流中重复赋值审批日期导致的。优先在写入SharePoint前处理:
1. 修正重复值问题
- 检查工作流,删除对「审批/驳回日期」字段的重复赋值步骤,仅保留一次使用审批动作的响应日期字段赋值。
- 如果已拿到重复的字符串变量,用
substring()提取第一个完整的ISO日期:
(ISO格式日期substring(variables('重复日期变量'), 0, 20)YYYY-MM-DDTHH:MM:SSZ固定为20个字符,截取前20位即可得到单个有效日期)
2. 转换为易读格式
用formatDateTime()将清理后的ISO日期转为友好格式,比如YYYY年MM月DD日 HH:mm:
formatDateTime(substring(variables('重复日期变量'), 0, 20), 'yyyy年MM月dd日 HH:mm')
将处理后的值通过Send HTTP Request To SharePoint或Update Item操作写入字段即可。
二、用SharePoint计算列处理已存在的数据
如果不想修改工作流,或需要处理历史脏数据,可创建计算列提取并转换日期:
1. 转换为日期时间类型
创建计算列,数据类型选择「日期和时间」,使用以下公式:
=DATEVALUE(LEFT([审批/驳回日期],10)) + TIMEVALUE(MID([审批/驳回日期],12,8))
LEFT([审批/驳回日期],10):提取前10位的日期部分(如2024-08-30)DATEVALUE():将字符串转为日期格式MID([审批/驳回日期],12,8):提取第12位开始的8位时间部分(如12:58:05)TIMEVALUE():将字符串转为时间格式,两者相加得到完整的日期时间
2. 转换为易读文本格式
若需要文本格式的友好显示,数据类型选择「单行文本」,使用公式:
=TEXT(DATEVALUE(LEFT([审批/驳回日期],10)),"yyyy年mm月dd日") & " " & TEXT(TIMEVALUE(MID([审批/驳回日期],12,8)),"HH:mm")
TEXT()函数用于将日期时间转为指定格式,HH:mm表示24小时制时间,若要12小时制可改为hh:mm
内容的提问来源于stack exchange,提问作者Phil Edwards
相关产品推荐
相关产品推荐

