Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel PowerBI:如何使用DAX/Measure计算/转换时间到百分比_Excel_Excel Formula_Powerbi_Dax_Business Intelligence - Fatal编程技术网

Excel PowerBI:如何使用DAX/Measure计算/转换时间到百分比

Excel PowerBI:如何使用DAX/Measure计算/转换时间到百分比,excel,excel-formula,powerbi,dax,business-intelligence,Excel,Excel Formula,Powerbi,Dax,Business Intelligence,我设法在Excel中获得了E列所需的时间差%,easy job只是将数据类型更改为百分比。我们所计算的是这些时间差的%,一列一列,不值得考虑 PowerBI中的情况不一样,我无法正确计算它,总是在逗号前加1,然后再加上结果——你可以在我所说的两个表/列中进行比较 我正在寻找方法/DAX/measure如何正确计算它,无论是小数还是直接到百分比,只要百分比与Excel列中的相同。有什么想法吗 左边是Excel,右边是PowerBI 似乎Excel是以24小时为基础的,我在计算24小时=24*360

我设法在Excel中获得了E列所需的时间差%,easy job只是将数据类型更改为百分比。我们所计算的是这些时间差的%,一列一列,不值得考虑

PowerBI中的情况不一样,我无法正确计算它,总是在逗号前加1,然后再加上结果——你可以在我所说的两个表/列中进行比较

我正在寻找方法/DAX/measure如何正确计算它,无论是小数还是直接到百分比,只要百分比与Excel列中的相同。有什么想法吗

左边是Excel,右边是PowerBI


似乎Excel是以24小时为基础的,我在计算24小时=24*3600秒时使用了这个百分比

我开始在power中结合查询日期和时间,这与你过去一天的情况有关,你的计算仍然需要正确

转到查询编辑器。选择两列,然后将它们合并。下一步将类型更改为日期/时间,结果:

保存并关闭编辑器

在Power Bi中,添加一列:

NextDate = LOOKUPVALUE(Explog[Date];Explog[Index];Explog[Index] + 1)
这是基于索引+1选择下一个日期

添加另一列TimeDiffSec,以秒为单位计算datediff:

TimeDiffSec = DATEDIFF(Explog[Date];Explog[NextDate];SECOND)
最后一步是添加百分比列:

% of time difference = 
var perc = Explog[TimeDiffSec]/ (24*3600)
return if(perc >= 1; perc -  1; perc)
最终结果:

注意:如果您不想混合使用系统STYRAX-洗涤器,您可以在下一个日期使用以下选项:


你能分享你的Excel公式吗?这将有助于我了解DAX需要什么。@Jenn嗯,我使用MODD3-D2仅从E列时差中获得;1和列F%只是=E2,百分比作为数据类型。没什么。这很有帮助,几乎解决了我的问题!!只是百分比与Excel中我的略有不同。。问题是这些日期必须减去,就像我在Excel中使用MOD A3-A2那样,所以我忽略了一天到另一天的24小时差异重叠,当你减去18.01.2019 14:40-17.01.2019 04:55时,它必须给出9:45:00的差异,但是,在这种情况下,百分比必须是40,6%,而对于那些时间从一天到另一天重叠的情况,我得到140,6%,换句话说,每个事件的百分比必须低于100%。如果我用你的方式做的话,我会得到我的数据的另一张图片,我会保留下来进行比较。我更新了百分比,使其不超过100%惊人!简直太神奇了!我不记得用那些PERC了…现在就得学。现在它就像一个符咒!!非常感谢!
NextDate = 
var nextIndex = 
    CALCULATE(MIN(Explog[Index]);
        FILTER(Explog;Explog[Index] > EARLIER(Explog[Index]) && Explog[System] = EARLIER(Explog[System])))
return 
    LOOKUPVALUE(Explog[Date];Explog[Index];nextIndex; Explog[System];Explog[System])