Returns the results of an either/or conditional evaluation. If the initial argument evaluates as TRUE
, returns the result of evaluating the second argument; otherwise, returns the result of evaluating the third argument.
Sample usage
IF(TRUE, "Yes!", "No!")
returns Yes!
IF(FALSE, "Yes!", "No!")
returns No!
IF((1 > 0), "Yes!", "No!")
returns Yes!
IF((1 < 0), "Yes!", "No!")
returns No!
IF(ISBLANK(""), "Yes!", "No!")
returns Yes!
See also: ISBLANK()
.
IF(NOT(ISBLANK("")), "Yes!", "No!")
: No!
Equivalent to IF(ISNOTBLANK(""), "Yes!", "No!")
. See also: ISNOTBLANK()
, NOT()
.
IF(([Count] < 0), 0, [Count])
returns 0
if the Count
column value is less than zero, or the value itself if zero or greater. Equivalent to MAX(LIST(0, [Count]))
. See also: LIST()
, MAX()
.
IF(([Date] = TODAY()), TRUE, FALSE)
: Returns TRUE
if the Date
column value matches today's date; otherwise, returns FALSE
. Equivalent to ([Date] = TODAY())
. See also: TODAY()
.
IF(USERSETTINGS("Names in uppercase?"), UPPER([Name]), [Name])
returns the Name
column in all uppercase letters if the value of the Names in uppercase?
user setting is TRUE
; otherwise, returns the Name
column value unchanged. See also: UPPER()
, USERSETTINGS()
.
IF(ISNOTBLANK([Phone Number]), [Phone Number], "(no phone)")
returns the column value if the Phone Number
column value isn't blank; otherwise, returns the text (no phone)
.
IF(ISNOTBLANK([Customer].[Discount Rate]), ([Price] * [Customer].[Discount Rate]), [Price])
: If the customer has a discount, the discounted price is returned; otherwise, the original price is returned.
Leap year?
IF(
(
MONTH(
DATE(
"2/28/"
& YEAR(TODAY())
)
+ 1
)
= 2
),
"leap year",
"not leap year"
)
-
TODAY()gives today's date. -
YEAR(...)gives the year of the given date. -
"2/28/" & ...constructs aTextvalue inMM/DD/YYYY-format date for February 28 of this year. -
DATE(...)declares the constructedTextvalue aDatevalue. -
DATE(...) + 1adds one day to the given date. -
MONTH(...)gives the month number of the computed date,1to12, where1is January and12is December. -
((...) = 2)asks whether the month number is2(February). -
IF(..., "leap year", "not leap year")givesleap yearif the day after February 28 of this year is in February, ornot leap yearif not.
See also: DATE()
, MONTH()
, TODAY()
, YEAR()
.
Weekday or weekend?
IF(
IN(
WEEKDAY(TODAY()),
LIST(1, 7)
),
"It's the weekend!",
"It's a weekday."
)
-
TODAY()gives today's date. -
WEEKDAY(...)gives the weekday number of the given date,1to 7, where1is Sunday and7is Saturday. -
LIST(1, 7)constructs a list of two numbers:1and7. -
IN(..., ...)asks whether the computed weekday number is present in the constructed list. -
IF(..., "It's the weekend!", "It's a weekday.")givesIt's the weekend!if the the weekday number is1or7, orIt's a weekday.otherwise.
See also: IN()
, LIST()
, TODAY()
, WEEKDAY()
.
Syntax
IF( logical-
expression
, value-if-true
, value-if-false
)
-
logical-expression- AYes/Noexpression that evaluates toTRUEorFALSE. -
value-if-true- An expression to be evaluated only if thelogical-expressionevaluates asTRUE. -
value-if-false- An expression to be evaluated only if thelogical-expressionevaluates asFALSE.
Both value-if-true
and value-if-false
should produce results of comparable types (for example, both textual, or both numeric). The results may both be single values or lists.

