Forum Discussion
Customized column based on a certain row value
- Anonymous5 years ago
Hi Anonymous ,
You can create a calculated column as below:
NewColumn = VAR _ADVcount = CALCULATE ( COUNT ( 'Customers'[CustomerID] ), FILTER ( ALL ( 'Customers' ), 'Customers'[CustomerID] = EARLIER ( 'Customers'[CustomerID] ) && 'Customers'[Material] = "ADV" ) ) VAR _ENTcount = CALCULATE ( COUNT ( 'Customers'[CustomerID] ), FILTER ( ALL ( 'Customers' ), 'Customers'[CustomerID] = EARLIER ( 'Customers'[CustomerID] ) && 'Customers'[Material] = "ENT" ) ) RETURN IF ( _ADVcount > 0, "ADV Customer", IF ( _ENTcount > 0, "ENT Customer", CONCATENATE ( 'Customers'[Material], " Customer" ) ) )Best Regards
Hey Anonymous ,
thanks for answering here, your proposed solution results in something like this:
| CustomerID | Material | NewColumn |
| 1 | ADV | ADV 1 |
| 1 | Viewer | Viewer 1 |
| 1 | Editor | Editor 1 |
| 1 | Whatever | Whatever 1 |
| 2 | ENT | ENT 2 |
| 2 | Viewer | Viewer 2 |
| 2 | Editor | Editor 2 |
| 2 | Whatever | Whatever 2 |
That is not what I am looking for. I really need all lines of a customer (with the same ID) where in one or more lines the material is ADV to be flagged as "ADV Customer".
You don't need to use Customer ID in here;
Custom = COMBINEVALUES(" ",'Sheet1 (2)'[Material],"Customer").
It is a text and not a field.
Copy my formula as it is and see if it works.
- Anonymous5 years agoNot applicable
But even this would concat whatever is in [Material] with the term customer. Wouldn´t that result in
CustomerID Material NewColumn 1 ADV ADV Customer 1 Viewer Viewer Customer 1 Editor Editor Customer 1 Whatever Whatever Customer 2 ENT ENT Customer 2 Viewer Viewer Customer 2 Editor Editor Customer 2 Whatever Whatever Customer I need a solution where the term "ADV Customer" is applied to all lines for a certain customer as soon one (or more) of the materials is ADV.
- Anonymous5 years agoNot applicable
Hi Anonymous ,
You can create a calculated column as below:
NewColumn = VAR _ADVcount = CALCULATE ( COUNT ( 'Customers'[CustomerID] ), FILTER ( ALL ( 'Customers' ), 'Customers'[CustomerID] = EARLIER ( 'Customers'[CustomerID] ) && 'Customers'[Material] = "ADV" ) ) VAR _ENTcount = CALCULATE ( COUNT ( 'Customers'[CustomerID] ), FILTER ( ALL ( 'Customers' ), 'Customers'[CustomerID] = EARLIER ( 'Customers'[CustomerID] ) && 'Customers'[Material] = "ENT" ) ) RETURN IF ( _ADVcount > 0, "ADV Customer", IF ( _ENTcount > 0, "ENT Customer", CONCATENATE ( 'Customers'[Material], " Customer" ) ) )Best Regards
- Anonymous5 years agoNot applicable
Thank you so much, I wasn´t able to check earlier. That did the trick!