PowerApps中如何将Excel大文件返回的44776.4357060转换为时间格式?
解决PowerApps中Excel大数据量时日期时间显示为序列号的问题
当Excel文件行数超过5000行时,Power Apps的Excel连接器会切换为导入模式,此时日期时间数据会被解析为Excel的日期序列号(整数部分对应日期,小数部分对应当日时间占比,比如44776.4357060里,44776是1900年1月1日到2022年8月1日的天数,0.4357060对应当天7:55:06的时间占比)。
你可以通过以下两种方式转换回正确的时间格式:
1. 直接转换序列号为日期时间
使用Excel日期的起始基准(1900年1月1日)加上序列号,再做时区偏移和格式化:
Text(DateAdd(Date(1900,1,1) + ThisItem.Checkin, TimeZoneOffset(), Minutes), "hh:mm:ss AM/PM")
如果需要用ShortTime格式,也可以替换为:
Text(DateAdd(Date(1900,1,1) + ThisItem.Checkin, TimeZoneOffset(), Minutes), ShortTime)
2. 兼容两种数据格式(行数<5000和>5000)
如果需要同时适配两种场景(行数少的时候是正常日期,行数多的时候是序列号),可以用IsNumeric判断数据类型后分支处理:
Text( DateAdd( If(IsNumeric(ThisItem.Checkin), Date(1900,1,1)+ThisItem.Checkin, ThisItem.Checkin), TimeZoneOffset(), Minutes ), ShortTime )
内容的提问来源于stack exchange,提问作者Long Nguyễn
相关产品推荐
相关产品推荐

