Zoho Sheet LET Function: Local Names, Revenue and Formula Checks
Use LET in Zoho Sheet to name intermediate values, calculate selected revenue and make formula dependencies visible with reproducible worksheet examples.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
=LET(revenue;2000;commission;revenue*10%;revenue-commission) gives 1800. LET assigns meaningful names inside one formula, so a later calculation can use an earlier result without repeating its entire expression.
Availability and version history
- Introduced: Added in December 2020, according to Zoho’s release history; no numbered cloud release is given.
- Availability: Listed in the current Zoho Sheet function reference; no final supported-version endpoint is documented.
- Scope: Zoho Sheet web-service documentation. Individual mobile, desktop/offline and imported-workbook behavior remains separately unverified.
- Checked: October 14, 2026, against the official LET entry. Outputs were independently calculated; no native Zoho Sheet execution was performed.
Syntax: name/value pairs followed by a result
The official syntax is:
LET(name, value, cal_or_name, [value], [cal_or_name], [value2], [cal_or_name2]...)
The final argument must calculate the returned result. Before it, each name needs its corresponding value or calculation. The reference prints commas in that signature but semicolons in its working example; this guide follows the example’s semicolon notation.
For the opening formula, revenue is 2000, commission is revenue × 10%, and the last expression subtracts commission. The names exist only within this formula. LET does not create a workbook-wide named range or a reusable named function. See LAMBDA for defining a calculation with parameters.
Reproduce the vendor’s revenue-and-commission pattern
Create a sheet named SalesNames. Put ID in A1, Representative in C1 and Revenue in F1. Enter the following values in the indicated columns, leaving B, D and E unused. Keep I:N for the selection and outputs.
| Row | A: ID | C: Representative | F: Revenue |
|---|---|---|---|
| 2 | S1 | Mark | 1200 |
| 3 | S2 | Ann | 800 |
| 4 | S3 | Mark | 450 |
| 5 | S4 | Lee | 1000 |
| 6 | S5 | Ann | 600 |
| 7 | S6 | Mark | 350 |
| 8 | S7 | Lee | 900 |
| 9 | S8 | Ann | 400 |
Put Mark in I1. In J2 enter the exact formula pattern printed in Zoho’s LET entry:
=LET(revenue;SUMIF(C:C;I1;F:F);commission;revenue*10%;revenue-commission)
Expected J2 is 1800: Mark’s three revenues total 2000, and ten percent is 200. The source supplies the formula, while these eight input records and the resulting total are this guide’s independently calculated fixture. The whole-column references are intentional here; avoid adding unrelated matching records elsewhere in C/F.
Build a separate transparent check in K2:N2:
K2: =SUMIF(C2:C9;I1;F2:F9)
L2: =K2*10%
M2: =K2-L2
N2: =J2-M2
K2:M2 should be 2000,200,1800, and N2 zero. SUMIF uses the representative column as its test range and the aligned revenue column as its sum range. LET names the resulting scalar total; it does not change the selection rule.
Duplicate SalesNames as AnnSelection and change only I1 to Ann. K2:M2 become 1800,180,1620, J2 is 1620, and N2 stays zero. In another copy named LeeSelection, set I1 to Lee: 1900,190,1710. Keep the original Mark selection intact for comparison.
For an input change, duplicate the original SalesNames as ChangedSale and change only F4 from 450 to 500. Mark’s revenue becomes 2050, commission 205, and net 1845. The formulas still select the same rows; only one amount changed.
Follow dependencies within a row
Create LineAmounts with Quantity, Unit price, Discount rate, LET result, Gross, Discount, Arithmetic result and Difference in A1:H1. Enter these numeric inputs in A2:C5:
| Row | A | B | C |
|---|---|---|---|
| 2 | 3 | 12 | 0.1 |
| 3 | 5 | 8 | 0.05 |
| 4 | 2 | 20 | 0 |
| 5 | 7 | 5 | 0.2 |
Enter these formulas, then fill D2:H2 through row 5:
D2: =LET(gross;A2*B2;discount;gross*C2;gross-discount)
E2: =A2*B2
F2: =E2*C2
G2: =E2-F2
H2: =D2-G2
| Row | E: gross | F: discount | Expected D and G | H |
|---|---|---|---|---|
| 2 | 36 | 3.6 | 32.4 | 0 |
| 3 | 40 | 2 | 38 | 0 |
| 4 | 40 | 0 | 40 | 0 |
| 5 | 35 | 7 | 28 | 0 |
The second named value uses gross, which was defined earlier in the same formula. No rounding is inserted into this arithmetic example; a currency-rounding policy would be an additional rule.
Duplicate LineAmounts as ChangedDiscount and set C3 to 0.15. E3 stays 40; F3 becomes 6; D3/G3 become 34; H3 stays zero. Changing the named expression’s input does not require rewriting it in every later occurrence.
Advanced: a fixed fee is different from a percentage
On FeePolicy, put revenue in A1, rate in B1 and fixed fee in C1. Enter 2000,0.1,25 in A2:C2. D2:
=LET(revenue;A2;commission;revenue*B2;revenue-commission-C2)
Expected D2 is 1775. E2 =A2*(1-B2)-C2 independently reproduces it. F2 =(A2-C2)*(1-B2) gives 1777.5, and G2 =F2-D2 gives 2.5. The latter formula discounts the fixed fee as well as the revenue. Naming intermediate values can make such a policy difference easier to notice; it cannot decide which policy is intended.
Copy FeePolicy as ZeroRate and change only B2 to zero. D2:F2 all become 1975, and G2 becomes zero. Two formulas can agree for a special input while implementing different general rules.
Names, errors and practical limits
Use an unquoted identifier for a local name and quoted text for a literal string. The short entry does not fully specify the valid-name grammar, duplicate-name behavior, nested scope, maximum bindings or evaluation order for error-producing expressions. These examples use distinct, simple alphabetic names and explicit numeric inputs.
The official error table mentions invalid or mistyped names, bad types and references, but it is a shared glossary rather than a complete LET-specific test matrix. Do not infer exact outcomes for every malformed binding. Keep the final result expression present and make each earlier name/value pair complete. Zoho’s launch example supports the readability benefit; no performance benchmark or volatile-function test is claimed here.