Forum Discussion
Stuznet
7 years agoHelper V
Multiple IF ISBLANK Condition
Hi,
I’m struggling create an Aging Column and handle the blank.
I created a calculated column
Aging =
VAR DaysBtwn = IF(ISBLANK([Date1]), BLANK(), IF(ISBLANK([Date2), BLANK(), ([DATE1] - [Date2]) *1.))
RETURN
IF(ISBLANK(DaysBtwn), BLANK(),
IF(AND(DaysBtwn <31, “0-30 Days”, DaysBtwn <61, “30-60 Days”, “61+ Days”)))))
How do I write this formula properly without getting an error?
Much appreciated!
I’m struggling create an Aging Column and handle the blank.
I created a calculated column
Aging =
VAR DaysBtwn = IF(ISBLANK([Date1]), BLANK(), IF(ISBLANK([Date2), BLANK(), ([DATE1] - [Date2]) *1.))
RETURN
IF(ISBLANK(DaysBtwn), BLANK(),
IF(AND(DaysBtwn <31, “0-30 Days”, DaysBtwn <61, “30-60 Days”, “61+ Days”)))))
How do I write this formula properly without getting an error?
Much appreciated!
Stuznet -
AND ( ) only takes two arguements so you'd have to nest if you wanted to go that way.
The following seems to work in my small sample that I created, possibly it will work for your data:
Aging = VAR DaysBtwn = IF ( ISBLANK ( Table1[DATE1] ), BLANK (), IF ( ISBLANK ( Table1[DATE2] ), BLANK (), ( Table1[DATE1] - Table1[DATE2] ) * 1 ) ) RETURN IF ( ISBLANK ( DaysBtwn ), BLANK (), SWITCH ( TRUE (), DaysBtwn < 31, "0-30 Days", DaysBtwn < 61, "30-60 Days", DaysBtwn >= 61, "61+ Days" ) )
4 Replies
- ChrisMendozaResident Rockstar
Stuznet -
AND ( ) only takes two arguements so you'd have to nest if you wanted to go that way.
The following seems to work in my small sample that I created, possibly it will work for your data:
Aging = VAR DaysBtwn = IF ( ISBLANK ( Table1[DATE1] ), BLANK (), IF ( ISBLANK ( Table1[DATE2] ), BLANK (), ( Table1[DATE1] - Table1[DATE2] ) * 1 ) ) RETURN IF ( ISBLANK ( DaysBtwn ), BLANK (), SWITCH ( TRUE (), DaysBtwn < 31, "0-30 Days", DaysBtwn < 61, "30-60 Days", DaysBtwn >= 61, "61+ Days" ) )- StuznetHelper V
ChrisMendoza thank you it works :)
- jsh121988Microsoft Employee
Try this and use && instead of AND() and || instead of OR() for cleaner code:
AgeDays =
// If either is blank, then nDays wil be blank
VAR nDays = DATEDIFF([Date1],[Date2],SECOND) / 60 / 60 / 24
SWITCH( TRUE(),
nDays < 31, "0-30 Days",
nDays < 61, "30-60 Days",
nDays >= 61, "61+ Days",
BLANK()
) - AnonymousNot applicableTRY THISDAYSDIFF =
VAR DAYS = IF(OR(ISBLANK(Table[date1]),ISBLANK(Table[date2])),BLANK(),DATEDIFF(Table[date1],Table[date2],DAY))
RETURN IF(DAYS <31, "0-30 Days" , DAYS <61, "30-60 Days" , "61+ Days")