In Excel 365 builds that already have the new Dynamic Array formulas, all formulas are treated as array formulas by default. The @ sign is used to prevent the new default array behavior of a function if it is not wanted in that particular formula.
If the same workbook is opened in a non DA version of Excel, it will not be visible.
If the @ sign is entered into non DA versions of Excel, it will silently be removed when the formula is confirmed into the cell.
Edit: The @ sign as a prefix to an Excel function should not be confused with the @ sign for Lotus compatibility. These are two different things.
Consider the following screenshot:
It was taken in Excel with Dynamic Arrays enabled. The formula in B2 is =ROW(1:4) and it has simply been confirmed with Enter. The formula is treated like an array formula and the results automatically "spill" into the next rows.
If this behaviour is not wanted, the function can be preceded with an @ sign and then it will behave like a non-array formula in the old Excel without Dynamic Arrays. In old Excel, I would have to select 4 cells, type the formula and confirm with Ctrl-Shift-Enter to get the formula to return the values into four cells.
Answer from teylyn on Stack ExchangeVideos
In Excel 365 builds that already have the new Dynamic Array formulas, all formulas are treated as array formulas by default. The @ sign is used to prevent the new default array behavior of a function if it is not wanted in that particular formula.
If the same workbook is opened in a non DA version of Excel, it will not be visible.
If the @ sign is entered into non DA versions of Excel, it will silently be removed when the formula is confirmed into the cell.
Edit: The @ sign as a prefix to an Excel function should not be confused with the @ sign for Lotus compatibility. These are two different things.
Consider the following screenshot:
It was taken in Excel with Dynamic Arrays enabled. The formula in B2 is =ROW(1:4) and it has simply been confirmed with Enter. The formula is treated like an array formula and the results automatically "spill" into the next rows.
If this behaviour is not wanted, the function can be preceded with an @ sign and then it will behave like a non-array formula in the old Excel without Dynamic Arrays. In old Excel, I would have to select 4 cells, type the formula and confirm with Ctrl-Shift-Enter to get the formula to return the values into four cells.
@ sign is popularly knows as Implicit intersection operator to support Dynamic Array formula method. It can be found in Excel 2019 & 365.
@ sign is almost identical to the older spreadsheet versions, except it uses @ to indicate where implicit intersection may be used, where older spreadsheet versions did this silently.
Implicit intersection follows these rules:
If cell value is a single item, then return the item.
If values are in a range, then return the cell on the same row or column as the formula.
If it is an array, then pick the top-left value.
Considering versions like 2013 & 2016, @ can be found with TABLE.
- Uses the Column header to carry values in the Row.
- Consider the example below. If the formula begins with
@, it doesn't return an error but removes the@sign as soon as it finishes with Enter, and gets the value100.
=@VLOOKUP(G112,A111:E111,2,FALSE)
N.B.
With an older version of Excel, functions that return multi-cell ranges or an array will be prefixed with @.
An apostrophe before a cell value forces Excel to interpret the value as text. This is mostly useful for values that look like a number or date.
For example, Dec-1 would ordinarily be converted to a date in December. If you want the literal text Dec-1, enter it as 'Dec-1.
In formulas that refer to another sheet whose name contains spaces, the sheet name is enclosed in apostrophes. For example: ='Other Sheet'!A1
Means nothing and does nothing in your example.
If your data were numbers, the apostrophe would mean the numbers will be treated as text values.
Example. . . . .if you want leading zeros to remain, preface them with the apostrophe.
'000001234567
Gord
The $ sign causes the cell column or row or both in a formula to be fixed.
That is, if you drag the formula cell horizontally or vertically in order to copy the formula, Excel will not adjust this value.
For example :
Cell Formula
A0 =$B4
If I drag this horizontally I will get :
Cell Formula
B0 =$B4
C0 =$B4
If I drag this vertically I will get :
Cell Formula
A1 =$B5
A2 =$B6
Without the dollar sign :
If I drag this horizontally I will get :
Cell Formula
B0 =C4
C0 =D4
If I drag this vertically I will get :
Cell Formula
A1 =B5
A2 =B6
The dollar sign allows you to fix either the row, the column or both on any cell reference, by preceding the column or row with the dollar sign.
In your example you fix the column to B and the row to 4 because you probably want to take in consideration only that cell for your formula.
The double-dash is known as a double unary operator.
Try this link: Why use -- in SUMPRODUCT formulae
Specifically:
SUMPRODUCT() ignores non-numeric entries. A comparison returns a boolean (TRUE/FALSE) value, which is non-numeric. XL automatically coerces boolean values to numeric values (1/0, respectively) in arithmetic operations (e.g., TRUE + 0 = 1).
The most efficient way to coerce the value is first to apply the unary minus operator, coercing TRUE/FALSE to -1/0, then applying it again to negate the value, e.g., +1/0.
A single unary operator (-) coerces true/false values into -1/0. By using the double unary operaor, we coerce the values again to 1/0.
The unary operator (-) is a shorthand method to convert a true/false statement into -1/0.
A single operator will convert -(true) into -1, so a double unary operator is used to convert that back into 1:
-(-(true)) = -(-(1)) = 1
-(-(false)) = -(-(0)) = 0
Going through a coworkers spreadsheet right now and I'm just wondering if =+ means anything in Excel? I googled it and couldn't find much. Apparently it's the same thing as =? Why do they do =+ then? Thanks guys!