Forum Discussion
if condition for M code
Hi,
I'm using this dax but how can I write M code in query when create new custom column?
Also is there any way change the values directly without adding new column?
IF([MRBTS ID] < 113000, "A",
IF([MRBTS ID >= 113000 && [MRBTS ID] < 125401, "B",
IF([MRBTS ID >= 125401 && [MRBTS ID] < 130000, "C",
IF([MRBTS ID >= 130000 && [MRBTS ID] < 160000, "D",
Blank()
Hi
You can use the "conditional column" option in add column ribbon option. Make sure you define each condition in seperate line
Or if you want to write the code, you can use below code option
= Table.AddColumn(YourPreviousStepName, "New Column", each if [MRBTS ID] < 113000 then "A" else if [MRBTS ID] >= 113000 and [MRBTS ID] < 125401 then "B" else if [MRBTS ID] >= 125401 and [MRBTS ID] < 130000 then "C" else if [MRBTS ID] >= 130000 and [MRBTS ID] < 160000 then "D" else null)Best Regards,
hnam_2006
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
3 Replies
- CookistadorSuper User
Hi Anonymous
This is the M code for your Dax code
if [MRBTS ID] < 113000 then "A" else if [MRBTS ID] >= 113000 and [MRBTS ID] < 125401 then "B" else if [MRBTS ID] >= 125401 and [MRBTS ID] < 130000 then "C" else if [MRBTS ID] >= 130000 and [MRBTS ID] < 160000 then "D" else null // Equivalent to BLANK() in DAXFor your second question, you can use replace, but probably not the best approach
What I would sugget, would be to remove your main column once the calculated column has been added and then renammed the calculated column by the name of the source one
- Elena_KalinaSolution Sage
Hi Anonymous
You can replace values in an existing column using Transform > Replace Values or with M code:
Right-click your query and select Advanced Editor
Add a step like this after your source:
= Table.ReplaceValue( PreviousStepName, each [MRBTS ID], each if _ < 113000 then "A" else if _ >= 113000 and _ < 125401 then "B" else if _ >= 125401 and _ < 130000 then "C" else if _ >= 130000 and _ < 160000 then "D" else null, Replacer.ReplaceValue, {"MRBTS ID"} )
- hnam_2006Frequent Visitor
Hi
You can use the "conditional column" option in add column ribbon option. Make sure you define each condition in seperate line
Or if you want to write the code, you can use below code option
= Table.AddColumn(YourPreviousStepName, "New Column", each if [MRBTS ID] < 113000 then "A" else if [MRBTS ID] >= 113000 and [MRBTS ID] < 125401 then "B" else if [MRBTS ID] >= 125401 and [MRBTS ID] < 130000 then "C" else if [MRBTS ID] >= 130000 and [MRBTS ID] < 160000 then "D" else null)Best Regards,
hnam_2006
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.