我正在尝试使用Microsoft Flow来观看Sharepoint Excel文档,并在表中的某个条件为真时发送电子邮件。
电子邮件成功包含时间列,但时间如下:0.569444444444444
而不是格式化的13:40:00
。
在我的电子邮件提醒中,此表达式可以获取值,尽管格式为0.569444444444444 ...
item()?['Time Column']
当我阅读文档并尝试使用此命令很好地格式化它时,但Flow失败。
formatDateTime(item()?['Time Column'],'hh:mm:ss')
我究竟做错了什么?有什么建议?谢谢。
此值0.569444444444444
是Excel时间13:40:00
的十进制表示。例如,0.04167
是1 hour
的十进制表示,1.0
相当于1 day
。
重点是从中提取小时,分钟和秒,这对于内置的MS Flow功能来说并不是很难但有点凌乱:
split(string(mul(variables('time_decimal'),int(24))),'.')[0]
返回小时
split(string(add(mul(int(60),sub(mul(variables('time_decimal'),int(24)),float(variables('hours')))),float(0.00000001))),'.')[0]
返回分钟,依此类推。