ISLOGICAL in Excel: Validate TRUE and FALSE Values
Distinguish real Excel Boolean values from text and numbers, and build typed approval checks that handle FALSE and missing values correctly.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
Quick answer: =ISLOGICAL(A2) checks whether A2 is a Boolean value. Both TRUE and FALSE pass. The text "TRUE" and number 1 do not become logical values merely because they can look or behave similarly in another formula.
Availability and version history
- Introduced: first introduction version is not established by the official history reviewed; the current product list is not a launch record.
- Availability: official help lists Excel for Microsoft 365, Excel for Microsoft 365 for Mac, Excel 2024, Excel 2024 for Mac, Excel 2021, Excel 2021 for Mac, Excel 2019, Excel 2016, Excel Web App.
- Checked: October 14, 2026; official ISLOGICAL reference. Documentation and independently modeled examples; no native Excel execution or broader platform certification.
Syntax: test the type before its value
=ISLOGICAL(value)
The argument is required. Microsoft illustrates that ISLOGICAL(TRUE) is TRUE while ISLOGICAL(“TRUE”) is FALSE. The distinction matters when importing flags from CSV files or another application: a visible word is not enough to establish its stored type.
ISLOGICAL does not mean “is approved,” “is selected,” or “the condition is true.” It means the supplied value belongs to the logical type.
Example 1: a reproducible flag audit
Enter these values in A2:A9 and fill =ISLOGICAL(A2) down column B.
| Cell | Entry | Expected result |
|---|---|---|
| A2 | =TRUE() |
TRUE |
| A3 | =FALSE() |
TRUE |
| A4 | ="TRUE" |
FALSE |
| A5 | number 1 |
FALSE |
| A6 | number 0 |
FALSE |
| A7 | leave empty | FALSE |
| A8 | =NA() |
FALSE |
| A9 | =8>3 |
TRUE |
There are three logical results: A2, A3 and A9. A comparison formula produces a Boolean, so A9 passes even though you did not enter TRUE directly. A3 passes because FALSE is a valid Boolean value.
Example 2: distinguish approved, rejected and invalid
Use this classification formula in C2 and fill down:
=IF(ISLOGICAL(A2),IF(A2,"Approved","Rejected"),"Invalid flag")
The expected labels are Approved, Rejected, Invalid flag, Invalid flag, Invalid flag, Invalid flag, Invalid flag, Approved. This workflow refuses to infer approval from the number 1 or the string TRUE. It also does not turn an error or missing entry into a valid rejection.
If your business rule deliberately treats a blank as “not yet answered,” add an ISBLANK branch before the invalid label. Keep that state separate from the real Boolean FALSE so a completed rejection is not confused with a missing response.
Example 3: convert an agreed import vocabulary
Suppose D2:D6 contain text created with ="yes", ="no", =" YES ", ="maybe" and ="". In E2 use =LOWER(TRIM(D2)) and fill down. The cleaned strings are yes, no, yes, maybe, empty text.
In F2 use and fill:
=IF(E2="yes",TRUE(),IF(E2="no",FALSE(),NA()))
Expected outputs are TRUE, FALSE, TRUE, #N/A, #N/A. Applying =ISLOGICAL(F2) down column G yields TRUE, TRUE, TRUE, FALSE, FALSE.
This conversion works because the allowed vocabulary and ordinary-space cleanup are explicit. It does not claim that every nonempty string means TRUE. Retain the original D column for inspection and keep unfamiliar tokens visible rather than silently assigning a default Boolean.
Example 4: count valid flags separately from approvals
For the original A2:A9 controls, put =IF(ISLOGICAL(A2),1,0) in H2 and fill down. The sum is 3 valid flags. Put =IF(ISLOGICAL(A2),IF(A2,1,0),0) in I2 and fill down; its sum is 2 approvals. The difference, 1, is the one valid FALSE flag.
These helper columns deliberately separate data quality from the decision recorded. They make it easy to inspect the row responsible for a count rather than relying on a compact formula with implicit coercion.
Troubleshooting and scope
Do not replace this type test with an ordinary truth test when numbers or text must be rejected. Formatting a cell as text or displaying an imported checkbox label does not prove its underlying Boolean type; test the actual stored value.
Use IF for branching, ISNUMBER for numeric inputs and ISTEXT for text. These are scalar worksheet controls; specific form controls, linked checkboxes and client UI behavior require their own testing.
References and verification
The datasets are fictional. Expected results follow the cited rules and independent arithmetic or type models; they are not native application captures. Examples use English function names and comma argument separators.