excel 将小时数转换为持续时间(HH:mm:ss)格式DAX

pcww981p  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(138)

因此,我通过PowerQuery导入了这组数据,并将其加载到Excel工作簿的数据模型中。为了减少查询加载时间,我决定将大部分转换转换到数据模型,而不是查询编辑器。现在,我有一个名为[Internal Time]的字段,它以小时为单位存储两个时间戳之间的持续时间。我想找到一种方法,成功地将它们转换为HH中的时间值:mm:ss格式。
正如你在下表中看到的,有些转换是正确的,而有些则是错误的
| 内部时间|内部时间(持续时间)|
| --|--|
| 47.7 |23点42分|
| 8.2 |八点十二分|
我使用的解决方案基本上是将第1列除以24。
完整的公式如下。有很多条件,但对于任何将被满足,价值将除以24。

=(IF([Create Time]>[Finish Time], [Create Time]-[Finish Time],
IF(AND([Internal Time]>0, [Internal Time]-[Weekends] >0), [Internal Time]-'Raw Data'[Weekends],
IF(AND([Internal Time]>0, [Internal Time]-[Weekends] <=0), [Internal Time],
IF(AND([Internal Time]<0, [Actual Duration] >0), [Actual Duration],
IF([Internal Time]=0, [Finish Time] - [Create Time]))))))/24

字符串

lf3rwulv

lf3rwulv1#

这更像是一种变通方法。

**注意:**这只工作到31天,如果有更多的这个计数器重新启动。

它基于一个月的第一天的日期格式,在下面的例子中是1/1/2000,并添加您的度量[内部时间]。然后您可以通过显示天,小时,分钟和秒来使用它。

yourMeasure = 

VAR DateHelper = DATE(2000,1,1)

Return
DateHelper + 
DATE(
    YEAR([Internal Time]/24),
        MONTH([Internal Time]/24),
        DAY([Internal Time]/24)
    )+
TIME(
    HOUR([Internal Time]/24),
    MINUTE([Internal Time]/24),
    SECOND([Internal Time]/24)
)

字符串
将此度量添加到表/矩阵后,确保将格式更改为“d hh:mm:ss”

相关问题