Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!
Dear experts,
I'm trying to create a measure that filter 2 columns of the same table using the "SEARCH"
Measure 12 =
CALCULATE(CALCULATE(DISTINCTCOUNT(Cases[CaseID]);
FILTER( ALL(Cases);
(SEARCH("Accident"; Cases[Event];;BLANK())) ||
(SEARCH("Extraordinary"; Cases[Cover];;BLANK())) ||
(SEARCH("Information"; Cases[Cover];;BLANK()))))
As you can see, I'm trying to get the cases where the column Event containts "Accident" or the column Cover contains "Extraordinary" or "Information".
Is it possible to do this in a measure?
Solved! Go to Solution.
try to take all Cases into ordinary quota:
Column =
IF(
(SEARCH("Accident"; 'Cases'[Event];;0) + SEARCH("Extraordinary"; 'Cases'[Cover];;0) +
SEARCH("Information"; 'Cases'[Cover];;0) > 0;
1;
BLANK()
)
or remove Cases at all
Column =
IF(
(SEARCH("Accident"; [Event];;0) + SEARCH("Extraordinary"; [Cover];;0) + SEARCH("Information"; [Cover];;0) > 0;
1;
BLANK()
)
Try like
Measure 12 =
CALCULATE(CALCULATE(DISTINCTCOUNT(Cases[CaseID]);
FILTER( ALL(Cases);
(SEARCH("Accident"; Cases[Event];1;0)>0) ||
(SEARCH("Extraordinary"; Cases[Cover];1;0)>0) ||
(SEARCH("Information"; Cases[Cover];1;0)>0))))
Hi @setis
try more simple
Measure 12 =
CALCULATE(CALCULATE(DISTINCTCOUNT(Cases[CaseID]);
FILTER( ALL(Cases);
SEARCH("Accident"; Cases[Event]) > 0 ||
SEARCH("Extraordinary"; Cases[Cover]) > 0 ||
SEARCH("Information"; Cases[Cover]) > 0
))
Ok
try
Measure 12 =
CALCULATE(CALCULATE(DISTINCTCOUNT(Cases[CaseID]);
FILTER( ALL(Cases);
SEARCH("Accident"; Cases[Event];;0) > 0 ||
SEARCH("Extraordinary"; Cases[Cover];;0) > 0 ||
SEARCH("Information"; Cases[Cover];;0) > 0
))
Thanks for your help. It's not working for me.
I'm getting an unrealistic number and when a place the measure on a table with the CaseID, I'm getting the same number in all rows.
Please find a dummy file here https://drive.google.com/file/d/1-e0pVtF0N5uJ2zOO4_cfYcAM-ctFQsNe/view?usp=sharing
The expected result is this:
Thanks in advance
wow. it look a little bit other task
you need this trigger row-by-row?
maybe you need a simple column ?
Column =
IF(
(SEARCH("Accident"; Cases[Event];;0) + SEARCH("Extraordinary"; Cases[Cover];;0) +
SEARCH("Information"; Cases[Cover];;0) > 0;
1;
BLANK()
)
Thanks @az38 ,
Yes, I need it on a row by row.
I'm getting a syntax error with the column you sent. Can you see what's wrong?
try to take all Cases into ordinary quota:
Column =
IF(
(SEARCH("Accident"; 'Cases'[Event];;0) + SEARCH("Extraordinary"; 'Cases'[Cover];;0) +
SEARCH("Information"; 'Cases'[Cover];;0) > 0;
1;
BLANK()
)
or remove Cases at all
Column =
IF(
(SEARCH("Accident"; [Event];;0) + SEARCH("Extraordinary"; [Cover];;0) + SEARCH("Information"; [Cover];;0) > 0;
1;
BLANK()
)
Thank you! It works now.
| User | Count |
|---|---|
| 51 | |
| 38 | |
| 33 | |
| 22 | |
| 19 |
| User | Count |
|---|---|
| 136 | |
| 101 | |
| 58 | |
| 36 | |
| 35 |