A complete reference of the most useful Excel and Google Sheets formulas. Every formula includes a copy-paste example and plain-English explanation. Bookmark this page — or use FormulaHawk to generate any formula from English.
| Formula | Example | What It Does |
| VLOOKUP | =VLOOKUP(A2, Products!A:D, 4, FALSE) | Find a value in a table and return a column |
| XLOOKUP | =XLOOKUP(A2, B:B, D:D, "Not found") | Modern replacement for VLOOKUP (Excel 365 / Sheets) |
| INDEX-MATCH | =INDEX(C:C, MATCH(A2, B:B, 0)) | Two-dimensional lookup, more flexible than VLOOKUP |
| FILTER | =FILTER(A2:D100, C2:C100>500) | Filter rows based on criteria (dynamic array) |
| QUERY (Sheets) | =QUERY(A:D, "SELECT A,B WHERE C>500") | SQL-like queries in Google Sheets |
| Formula | Example | What It Does |
| SUMIF | =SUMIF(B:B, ">500", C:C) | Sum values matching one condition |
| SUMIFS | =SUMIFS(D:D, B:B, "Sales", C:C, ">1000") | Sum values matching multiple conditions |
| COUNTIF | =COUNTIF(C:C, ">100") | Count cells matching one condition |
| COUNTIFS | =COUNTIFS(B:B, "Complete", C:C, ">="&TODAY()) | Count cells matching multiple conditions |
| AVERAGEIF | =AVERAGEIF(B:B, "East", C:C) | Average values matching a condition |
| SUMPRODUCT | =SUMPRODUCT(A2:A10, B2:B10) | Multiply arrays and sum (weighted totals) |
| Formula | Example | What It Does |
| CONCATENATE | =A2 & " " & B2 | Join text from multiple cells (use & operator) |
| TEXTJOIN | =TEXTJOIN(", ", TRUE, A2:A10) | Join text with delimiter, skip blanks |
| LEFT / RIGHT / MID | =LEFT(A2, 3) | Extract characters from text |
| LEN | =LEN(A2) | Count characters |
| TRIM | =TRIM(A2) | Remove extra spaces |
| UPPER / LOWER / PROPER | =PROPER(A2) | Change text case |
| SUBSTITUTE | =SUBSTITUTE(A2, "old", "new") | Replace text within a string |
| SPLIT | =SPLIT(A2, ",") | Split text by delimiter into columns |
| Formula | Example | What It Does |
| IF | =IF(A2>100, "High", "Low") | Conditional logic |
| IFS | =IFS(A2>90,"A", A2>80,"B", TRUE,"C") | Multiple conditions (avoids nested IFs) |
| SWITCH | =SWITCH(A2, "NY","New York", "CA","California") | Match value and return result |
| ROUND / ROUNDUP / ROUNDDOWN | =ROUND(A2, 2) | Round to N decimal places |
| RANK | =RANK(A2, A:A, 0) | Rank a value in a list |
| PERCENTILE | =PERCENTILE(A:A, 0.9) | Nth percentile of data |