Developer Tools
Spreadsheet Formula Builder
Build Excel and Google Sheets formulas with labeled fields. IF, VLOOKUP, INDEX/MATCH, SUMIF, TEXTJOIN, QUERY, ARRAYFORMULA, FILTER, and more.
Logical - Excel and Google Sheets
IF(logical_test, value_if_true, value_if_false)
Returns one value when a condition is true and another when it is false.
Any expression that evaluates to TRUE or FALSE.
Returned when the test is TRUE. Wrap text in double quotes.
Returned when the test is FALSE. Wrap text in double quotes.
Quick reference for every supported function
| Function | Category | Where | Signature |
|---|---|---|---|
| Logical | Excel + Sheets | IF(logical_test, value_if_true, value_if_false) | |
| Logical | Excel + Sheets | IFERROR(value, value_if_error) | |
| Logical | Excel + Sheets | IFNA(value, value_if_na) | |
| Logical | Excel + Sheets | IFS(test1, value1, [test2, value2], ...) | |
| Logical | Excel + Sheets | AND(condition1, [condition2], ...) | |
| Logical | Excel + Sheets | OR(condition1, [condition2], ...) | |
| Logical | Excel + Sheets | NOT(logical) | |
| Lookup | Excel + Sheets | VLOOKUP(search_key, range, column_index, [is_sorted]) | |
| Lookup | Excel + Sheets | HLOOKUP(search_key, range, row_index, [is_sorted]) | |
| Lookup | Excel + Sheets | XLOOKUP(search_key, lookup_range, return_range, [if_not_found], [match_mode], [search_mode]) | |
| Lookup | Excel + Sheets | INDEX(range, row, [column]) | |
| Lookup | Excel + Sheets | MATCH(search_key, range, [match_type]) | |
| Lookup | Excel + Sheets | INDEX(return_range, MATCH(search_key, lookup_range, 0)) | |
| Lookup | Excel + Sheets | CHOOSE(index, value1, [value2], ...) | |
| Text | Excel + Sheets | CONCATENATE(text1, [text2], ...) | |
| Text | Excel + Sheets | TEXTJOIN(delimiter, ignore_empty, text1, [text2], ...) | |
| Text | Excel + Sheets | LEFT(text, [num_chars]) | |
| Text | Excel + Sheets | RIGHT(text, [num_chars]) | |
| Text | Excel + Sheets | MID(text, start, length) | |
| Text | Excel + Sheets | LEN(text) | |
| Text | Excel + Sheets | TRIM(text) | |
| Text | Excel + Sheets | UPPER(text) | |
| Text | Excel + Sheets | LOWER(text) | |
| Text | Excel + Sheets | PROPER(text) | |
| Text | Excel + Sheets | SUBSTITUTE(text, old_text, new_text, [occurrence]) | |
| Math | Excel + Sheets | SUM(value1, [value2], ...) | |
| Math | Excel + Sheets | SUMIF(range, criterion, [sum_range]) | |
| Math | Excel + Sheets | SUMIFS(sum_range, range1, criterion1, [range2, criterion2], ...) | |
| Math | Excel + Sheets | COUNTIF(range, criterion) | |
| Math | Excel + Sheets | COUNTIFS(range1, criterion1, [range2, criterion2], ...) | |
| Math | Excel + Sheets | AVERAGEIF(range, criterion, [average_range]) | |
| Math | Excel + Sheets | ROUND(value, places) | |
| Math | Excel + Sheets | ROUNDUP(value, places) | |
| Math | Excel + Sheets | ROUNDDOWN(value, places) | |
| Math | Excel + Sheets | ABS(value) | |
| Math | Excel + Sheets | MIN(value1, [value2], ...) | |
| Math | Excel + Sheets | MAX(value1, [value2], ...) | |
| Math | Excel + Sheets | AVERAGE(value1, [value2], ...) | |
| Date | Excel + Sheets | TODAY() | |
| Date | Excel + Sheets | NOW() | |
| Date | Excel + Sheets | DATE(year, month, day) | |
| Date | Excel + Sheets | DATEDIF(start, end, unit) | |
| Date | Excel + Sheets | EOMONTH(start_date, months) | |
| Date | Excel + Sheets | NETWORKDAYS(start_date, end_date, [holidays]) | |
| Date | Excel + Sheets | WEEKDAY(date, [type]) | |
| Sheets only | Sheets only | ARRAYFORMULA(array_formula) | |
| Sheets only | Sheets only | QUERY(data, query, [headers]) | |
| Sheets only | Sheets only | FILTER(range, condition1, [condition2], ...) | |
| Sheets only | Sheets only | SORT(range, sort_column, is_ascending, [sort_column2, is_ascending2], ...) | |
| Sheets only | Sheets only | UNIQUE(range) | |
| Sheets only | Sheets only | SPLIT(text, delimiter, [split_by_each], [remove_empty_text]) | |
| Sheets only | Sheets only | JOIN(delimiter, value1, [value2], ...) | |
| Sheets only | Sheets only | IMPORTRANGE(spreadsheet_url, range_string) | |
| Sheets only | Sheets only | GOOGLETRANSLATE(text, [source_language], [target_language]) |
How to use
- Pick a function from the searchable picker. Use the category filters (Logical, Lookup, Text, Math, Date, Sheets only) or type a name like vlookup, sum if, or query.
- Fill in each labeled argument. Range fields take cell references like A2:A100 or Sheet!A:A; criteria fields take quoted conditions like ">100" or "shoes".
- Click Add another argument for variadic functions (SUMIFS, COUNTIFS, IFS, TEXTJOIN, AND, OR, CHOOSE) to add more value or condition pairs.
- Watch the Generated formula panel update live. Optional arguments are dropped when blank; required slots show a <name> placeholder so you can fix them.
- Click Copy formula and paste straight into your cell. The leading equals sign is included.
- Need a starting point? Click Reset to example to reload the worked example, or use Copy example to copy the canonical example for the current function.
About this tool
Spreadsheet Formula Builder helps you write correct Excel and Google Sheets formulas without flipping between docs tabs. Pick a function from the searchable picker (IF, VLOOKUP, INDEX, MATCH, XLOOKUP, SUMIF, SUMIFS, COUNTIF, COUNTIFS, AVERAGEIF, TEXTJOIN, CONCATENATE, LEFT, RIGHT, MID, LEN, TRIM, UPPER, LOWER, PROPER, SUBSTITUTE, IFERROR, IFNA, IFS, AND, OR, NOT, CHOOSE, ROUND, ROUNDUP, ROUNDDOWN, ABS, MIN, MAX, AVERAGE, TODAY, NOW, DATE, DATEDIF, EOMONTH, NETWORKDAYS, WEEKDAY, and the Sheets-only family ARRAYFORMULA, QUERY, FILTER, SORT, UNIQUE, SPLIT, JOIN, IMPORTRANGE, GOOGLETRANSLATE), fill in each labeled argument with cell references or values, and the live preview shows the composed formula with the leading equals sign so it pastes straight into a cell. Optional arguments are dropped automatically when blank, required slots show a placeholder so you can spot what is missing, and variadic functions like SUMIFS, COUNTIFS, IFS, TEXTJOIN, AND, OR, and CHOOSE accept as many extra pairs as you want with one click. Every function carries a one-line summary, a worked example, its canonical signature, and an argument legend that maps each input color to its kind (range, criterion, text, number, boolean) so you can scan a complex formula fast. Search the picker by function name, summary, or signature, or filter by category (Logical, Lookup, Text, Math, Date, Sheets only) to quickly jump to the function you need. A quick reference table at the bottom of the page lists every supported function with its signature and where it works (Excel + Sheets or Sheets only), making the page useful as a stand-alone cheat sheet even when you already know the formula you want to write. Everything runs locally in your browser. The cell references, criteria, search keys, and example data you type never leave your device.
Free to use. Works in your browser. No signup, no login.
Related tools
You may also like
CSV to JSON Converter
Two-way CSV and JSON converter with delimiter and header controls.
Open tool
ConverterCSV Viewer
View any CSV as a sortable, filterable, paginated table.
Open tool
Date & TimeExcel Date Converter
Convert Excel and Google Sheets serial date numbers to dates and back.
Open tool
ConverterExcel Column Letter Converter
Bidirectional spreadsheet column letter and column number converter with batch mode.
Open tool
ConverterCSV Deduplicator
Remove duplicate rows from a CSV by every column or a chosen key.
Open tool
DeveloperRegex Tester
Live regex testing with highlights, capture groups, and replacement preview.
Open tool