Forum Discussion
Nested IF Statement - Not Returning all Conditions
I'm running into a problem when running my nested IF statement.
If([value.FollowersonTwitter]<=500, "Less than 500",
IF([value.FollowersonTwitter]>=1000, "1000",
IF([value.FollowersonTwitter]>=5000, "5000+",
IF([value.FollowersonTwitter]>=10000, "10,000+", "No Followers"))))
Though when I run it I'm not getting any results for the rows that have 5000 or 10000 followers. What am I missing here?
Thanks!
Hey LyonsBI_BRL ,
when you have 6000 followers the criteria >=1000 gives back a true and the other options are not checked.
You can either change the order, so that the biggest numbers are checked first:
IF([value.FollowersonTwitter]>=10000, "10,000+", IF([value.FollowersonTwitter]>=5000, "5000+", IF([value.FollowersonTwitter]>=1000, "1000", If([value.FollowersonTwitter]<=500, "Less than 500", "No Followers"))))Or you have to add a second citeria:
If([value.FollowersonTwitter]<=500, "Less than 500", IF([value.FollowersonTwitter]>=1000 && [value.FollowersonTwitter]<5000, "1000", IF([value.FollowersonTwitter]>=5000 && [value.FollowersonTwitter]<10000, "5000+", IF([value.FollowersonTwitter]>=10000, "10,000+", "No Followers"))))Also I would recommend to check out the usage of SWITCH(TRUE) as it's a lot clearer than nested ifs:
https://powerpivotpro.com/2015/03/the-diabolical-genius-of-switch-true/
myCalculatedColumn = SWITCH( TRUE(), [value.FollowersonTwitter] >= 10000, "10,000+", [value.FollowersonTwitter] >= 5000, "5000+", [value.FollowersonTwitter] >= 1000, "1000", [value.FollowersonTwitter] <= 500, "Less than 500", "No Followers" )If you need any help please let me know.If I answered your question I would be happy if you could mark my post as a solution ✔️ and give it a thumbs up 👍Best regardsDenisBlog: WhatTheFact.biFollow me: twitter.com/DenSelimovic
3 Replies
- selimovdMost Valuable Professional
Hey LyonsBI_BRL ,
when you have 6000 followers the criteria >=1000 gives back a true and the other options are not checked.
You can either change the order, so that the biggest numbers are checked first:
IF([value.FollowersonTwitter]>=10000, "10,000+", IF([value.FollowersonTwitter]>=5000, "5000+", IF([value.FollowersonTwitter]>=1000, "1000", If([value.FollowersonTwitter]<=500, "Less than 500", "No Followers"))))Or you have to add a second citeria:
If([value.FollowersonTwitter]<=500, "Less than 500", IF([value.FollowersonTwitter]>=1000 && [value.FollowersonTwitter]<5000, "1000", IF([value.FollowersonTwitter]>=5000 && [value.FollowersonTwitter]<10000, "5000+", IF([value.FollowersonTwitter]>=10000, "10,000+", "No Followers"))))Also I would recommend to check out the usage of SWITCH(TRUE) as it's a lot clearer than nested ifs:
https://powerpivotpro.com/2015/03/the-diabolical-genius-of-switch-true/
myCalculatedColumn = SWITCH( TRUE(), [value.FollowersonTwitter] >= 10000, "10,000+", [value.FollowersonTwitter] >= 5000, "5000+", [value.FollowersonTwitter] >= 1000, "1000", [value.FollowersonTwitter] <= 500, "Less than 500", "No Followers" )If you need any help please let me know.If I answered your question I would be happy if you could mark my post as a solution ✔️ and give it a thumbs up 👍Best regardsDenisBlog: WhatTheFact.biFollow me: twitter.com/DenSelimovic- LyonsBI_BRLHelper III
Worked perfectly! Like I said I knew I was missing something here!
Thank you again! 😀
- selimovdMost Valuable Professional
LyonsBI_BRL I'm happy it worked. Yes, that are usually the annoying parts, when you don't see it and search at the wrong spot.
Best regards
Denis