我有一个表符合以下条件 . 多个项目有多个周结束 . 小时/成本列可以是正数或负数,并且是相关的(正小时/正成本) . 如果项目有任何成本(或 - ),我可以得到一个截止日期的项目,但我希望只有在小时数或成本总和为正时才能得到明确的计数 .
由于收费可以是 - 或者 - 并且可能在一周结束时取消,如果计算一周的总和为0,这将改变我的平均公式 .
我正在尝试构建一个计算字段,我可以将其添加到我的Pivot表中,该表列出了按Project过滤的实际收费周数 . 在样本中,有4个唯一日期,总和大于0,但我当前的公式给出了7个独特的日期,忽略了正数 .
WeekEndDate |项目|小时|成本
+---------------+---------+--------+-------------+
| WeekEndDate | Project | Hours | Cost |
+---------------+---------+--------+-------------+
| 10/7/16 | C7119A | 2.00 | $122.00 |
| 10/7/16 | C7119A | 32.00 | $1,952.00 |
| 10/7/16 | C7119A | 1.50 | $91.50 |
| 10/7/16 | C7119A | -32.00 | ($1,952.00) |
| 10/14/16 | C7119A | 10.00 | $610.00 |
| 10/14/16 | C7119A | -10.00 | ($610.00) |
| 10/21/16 | C7119A | 19.50 | $1,189.50 |
| 10/21/16 | C7119A | -19.50 | ($1,189.50) |
| 10/28/16 | C7119A | 2.00 | $122.00 |
| 10/28/16 | C7119A | 3.00 | $183.00 |
| 10/28/16 | C7119A | -3.00 | ($183.00) |
| 10/28/16 | C7119A | -2.00 | ($122.00) |
| 11/4/16 | C7119A | 1.00 | $61.00 |
| 11/11/16 | C7119A | 3.50 | $213.50 |
| 1/13/17 | C7119A | 3.00 | $183.00 |
+---------------+---------+--------+-------------+
1 回答
您可以使用SUMMARIZE()执行此操作 .
首先创建一个计算列,以获得项目/周组合的不同ID:
然后创建一个计算的度量来计算周数为正的小时数:
SUMMARIZE创建一个包含不同WeekEndDate值的表 . ADDCOLUMNS在该表中创建一个列,显示该WeekEndDate的小时数 . 过滤器删除虚拟表中小于或等于0的小时数的行 . 然后,Countrows计算表中剩余的行数,这等于结束日期的非重复计数 .
如果您没有为ProjectWeek创建计算列,而是在MAXX(VALUES())函数中使用WeekEndDate,则总共将得到7而不是4 .