# Why does Excel add @ to my formula?

@ keeps an older formula returning one value instead of spilling. Remove it to get every result: =B2:B7*C2:C7 spills a line total for each row.

**Excel:** `=B2:B7*C2:C7` (Excel 2021, 2024 and Microsoft 365)

**Google Sheets:** `=ARRAYFORMULA(B2:B7*C2:C7)`

## Example

Sample data (row 1 is the header):

| A | B | C | D |
| --- | --- | --- | --- |
| Item | Qty | Price | Line total |
| Pens | 12 | 1.25 |  |
| Paper | 5 | 7.49 |  |
| Toner | 2 | 64.9 |  |
| Folders | 30 | 0.45 |  |
| Labels | 4 | 8.99 |  |
| Tape | 6 | 2.1 |  |

Formula in D2: `=B2:B7*C2:C7`

Result (spills 6 × 1): $15.00; $37.45; $129.80; $13.50; $35.96; $12.60

## How it works

@ is the implicit intersection operator: it tells Excel to use only the value from the formula's own row. Excel adds it to formulas written in older versions, which expected one value, so they keep returning one value. Without it, `=B2:B7*C2:C7` spills one line total per row from a single cell.

## Other ways

- `=IF(B2:B7="","",B2:B7*C2:C7)`: Leaves rows without a quantity blank.

## Common mistakes

- Removing @ can produce #SPILL! if the cells below aren't empty. Clear them first.
- `[@Qty]` in an Excel Table is different: it means "this row's Qty" and should stay.
- If the file must work in Excel 2019 or earlier too, keep the @ (or one formula per row), since older versions can't spill.

## Questions

**Is it safe to delete the @?**

Yes, when you want all the results and there is room for them to spill. Otherwise leave it: the formula then works as it always did.

**Does Google Sheets use @?**

No. Google Sheets uses ARRAYFORMULA to return a whole range from one formula.

Every formula and result on this page was checked by running it in the Spreadsheet Practice formula engine on 2026-10-30.

Source: https://spreadsheetpractice.com/formulas/excel-adds-at-sign-to-formula
