好的,我看了很多视频,看了各种各样的东西,我想我已经快到了,但是一定要错过一些东西。在数据模型中,我尝试将ytd
计算添加到我的product_table
中。我在product_table
列的a
中没有唯一的日期,而且它们是每周的日期。我在今年的每周20行中拥有2018年的所有数据,每20行增加一周。例如。第1-20行是01/01/2018,第21-40行是07/01/2018,依此类推。
虽然我说它们位于20行的固定行中,但这是一个示例。某些星期有20个以上或少于20个,所以我不能使用行计数功能-
在列c
和h
之间,我还有很多其他类别,例如客户年龄,国家/地区等,因此没有唯一标识符。我需要一个才能工作吗? i
列是带有数字的sales列。我想要的是一个新列,该列为每行数据提供了一个ytd
编号,并且在a
和h
之间都有唯一的条件。第1周ytd
不会有任何不同。对于接下来的20行,我希望它在第2周的销售中增加第1周的销售,从而有效地给我ytd
。
我可以很容易地在数据集中求和,但我不想这样做。我想使用dax来节省空间等。
我有一个date_table
,在main_date
列中确实有唯一的日期。我所有的日期列在数据模型中均格式化为日期。
我尝试过:
=calculate(products[sales],datesytd(date_table[main_date]))
这只是复制了sales列中的数字,而没有按要求给我ytd
。我也尝试过
=calculate(sum(products[sales]) ,datesytd(date_table[main_date]))
我不知道我要做什么。所有的youtube片段似乎都没有相同的问题,但我认为它们的数据集具有唯一的日期。
我喜欢上载数据,但它的工作内容却无法在工作计算机上上传。希望我画得很清楚。
答案 0 :(得分:0)
已解决,在谷歌搜索sumif dax之后,迈克·霍尼(Mike Honey)做出了我已适应以获取所需东西的响应。我需要将过滤器和更早的功能添加到我的equarion中,结果就这样
Calculate (sum(products[sales]),
filter (sales, sales[we_date] <=earlier(sales[we_date]),
filter (sales, sales[year] =earlier(sales[year]),
filter (sales, sales[customer] =earlier(sales[customer]))
我还必须添加其他三个过滤器部分,但这现在给了我所需的ytd。
希望这对其他人有帮助