Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
CiaraCaryl
Frequent Visitor

Assigning role types with IF Function

Maybe there is a better way to do this but I am basically trying to create a column where if the employees title

  • Contains "Account Executive" but not "Enterprise" it returns "AE",
  • If it contains both "Account Executive" and "Enterprise" it returns "EAE"
  • If it contains neither it returns "Other"

The formula I am trying to use is: 

Role Type = (IF(NOT(CONTAINSSTRING(Opportunity[AE TItle], "Enterprise")
&& CONTAINSSTRING(Opportunity[AE TItle], "Account Executive")), "AE")
&& IF(CONTAINSSTRING(Opportunity[AE TItle], "Enterprise"), "EAE")
&& IF(NOT(CONTAINSSTRING(Opportunity[AE TItle], "Account Executive")), "Other"))

Is there a better formula I could use or is my syntax wrong?

Thank you
1 ACCEPTED SOLUTION
Irwan
Super User
Super User

hello @CiaraCaryl 

 

your syntax looks good but here are some notes you probably want to put a note.

Irwan_1-1721167194230.png

- in Line 4, NOT function is use for both containsstring but you need opposite value only for "Enterprise" for "AE".

- use comma in-between if statement

 

Here is one way to represent if statement based on your DAX.

Role Type =
IF(
    CONTAINSSTRING('Opportunity'[AE Title],"Account Executive")&&NOT CONTAINSSTRING('Opportunity'[AE Title],"Enterprise"),
    "AE",
IF(
    CONTAINSSTRING('Opportunity'[AE Title],"Enterprise"),
    "EAE",
IF(
    NOT CONTAINSSTRING('Opportunity'[AE Title],"Account Executive"),
    "Other"
)))

Irwan_2-1721167515466.png

 

Another way to write is using SWITCH.

Role Type Switch =
SWITCH(
    TRUE(),
    CONTAINSSTRING('Opportunity'[AE Title],"Account Executive")&&NOT CONTAINSSTRING('Opportunity'[AE Title],"Enterprise"),"AE",
    CONTAINSSTRING('Opportunity'[AE Title],"Enterprise"),"EAE",
    NOT CONTAINSSTRING('Opportunity'[AE Title],"Account Executive"),"Other"
)

Irwan_3-1721167780908.png

 

 

Hope this will help you.

Thank you.

View solution in original post

1 REPLY 1
Irwan
Super User
Super User

hello @CiaraCaryl 

 

your syntax looks good but here are some notes you probably want to put a note.

Irwan_1-1721167194230.png

- in Line 4, NOT function is use for both containsstring but you need opposite value only for "Enterprise" for "AE".

- use comma in-between if statement

 

Here is one way to represent if statement based on your DAX.

Role Type =
IF(
    CONTAINSSTRING('Opportunity'[AE Title],"Account Executive")&&NOT CONTAINSSTRING('Opportunity'[AE Title],"Enterprise"),
    "AE",
IF(
    CONTAINSSTRING('Opportunity'[AE Title],"Enterprise"),
    "EAE",
IF(
    NOT CONTAINSSTRING('Opportunity'[AE Title],"Account Executive"),
    "Other"
)))

Irwan_2-1721167515466.png

 

Another way to write is using SWITCH.

Role Type Switch =
SWITCH(
    TRUE(),
    CONTAINSSTRING('Opportunity'[AE Title],"Account Executive")&&NOT CONTAINSSTRING('Opportunity'[AE Title],"Enterprise"),"AE",
    CONTAINSSTRING('Opportunity'[AE Title],"Enterprise"),"EAE",
    NOT CONTAINSSTRING('Opportunity'[AE Title],"Account Executive"),"Other"
)

Irwan_3-1721167780908.png

 

 

Hope this will help you.

Thank you.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Prices go up Feb. 11th.

Jan25PBI_Carousel

Power BI Monthly Update - January 2025

Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.

Jan NL Carousel

Fabric Community Update - January 2025

Find out what's new and trending in the Fabric community.