Forum Discussion
SummarizeColumns with Multiple Filters
- 9 years ago
You can do something like this:
Table = CALCULATETABLE ( SUMMARIZECOLUMNS ( 'Product'[Emonth], 'Product'[Bills], 'Product' ), 'Product'[Emonth] = "May", 'Product'[Bills] = "Groceries" )I added 'Product' as a filter argument to SUMMARIZECOLUMNS, then wrapped in CALCULATETABLE containing the column filters.
(Since the table is calculated in an unfiltered context, I turned your FILTER functions into single column filters.)
Does this give the intended result?
Cheers,
Owen
Hi, I just created some sample data:
| Bills | Emonth | Type | Costs |
| Groceries | January | A | 200 |
| Groceries | May | A | 200 |
| Groceries | February | A | 200 |
| Groceries | March | A | 200 |
| Groceries | April | A | 200 |
| Groceries | May | A | 100 |
| Groceries | June | A | 100 |
| Groceries | July | A | 100 |
| Groceries | August | A | 100 |
| Groceries | September | A | 100 |
| Groceries | October | A | 100 |
| Groceries | November | A | 100 |
| Groceries | December | A | 100 |
| Groceries | January | B | 100 |
| Groceries | February | B | 100 |
| Groceries | March | B | 100 |
| Groceries | April | B | 100 |
| Groceries | May | B | 100 |
| Other | June | B | 100 |
| Other | July | B | 100 |
| Other | August | B | 100 |
| Other | September | B | 100 |
| Other | October | B | 100 |
| Other | November | B | 100 |
| Other | December | B | 100 |
The result should be:
| Bills | Emonth | Costs |
| Groceries | May | 400 |
Hi spoony
When I take your sample data and put it into a table as shown below.
I then take your exact Syntax and get the following table output, which is what you are expecting to see, based on the Filters in the CalculateTable?
- spoony9 years agoHelper I
Hmm wat happens when you put in the Type column, Does it still show the breakdown?
Bills Emonth TYPE Costs Groceries May A 300 Groceries May B 100 - GilbertQ9 years agoSuper User
This will work below if you only want values for the Groceries
Table = CALCULATETABLE ( ADDCOLUMNS ( SUMMARIZE ( 'Product', 'Product'[Emonth], 'Product'[Bills], 'Product'[Type] ), "Costs", CALCULATE(SUM('Product'[Costs] ),'Product'[Bills] = "Groceries") )//, //'Product'[Emonth] = "May" // 'Product'[Bills] = "Groceries" )Or this if you want the other Bills data also.
Table = CALCULATETABLE ( ADDCOLUMNS ( SUMMARIZE ( 'Product', 'Product'[Emonth], 'Product'[Bills], 'Product'[Type] ), "Costs", CALCULATE(SUM('Product'[Costs] ),'Product'[Bills] = "Groceries" || 'Product'[Bills] = "Other") )//, //'Product'[Emonth] = "May" // 'Product'[Bills] = "Groceries" )- spoony9 years agoHelper I
Thanks GilbertQ
Its almost working, i try to use it on the month and its not showing the correct totals for each type or Bills though:
Table = CALCULATETABLE ( ADDCOLUMNS ( SUMMARIZE ( 'Product', 'Product'[Emonth], 'Product'[Bills], 'Product'[Type] ), "Costs", CALCULATE(SUM('Product'[Costs] ),'Product'[Emonth] = "May" || 'Product'[Emonth] = "June") ) , 'Product'[Emonth] = "May" || 'Product'[Emonth] = "June" )