0

I have been told there is an answer to a similar question elsewhere, but the answer is not one I understand. So I repeat my (possibly stupid) question, hoping that someone will answer at my level, and tell me simply what to do. Should I:

  • Leave all those @ signs in place?
  • Delete them?

And when I call my user functions in future, should I just use their plain names as I named them, or put @ in front of the names? It may be relevant to say that my all my functions just return a single value.


Original question text:

I constructed a complex Excel workbook together with a large number of user created VBA functions in Excel for Mac 2011. All worked well.

Now I have opened the same workbook in Excel for Mac 16.50. It still seems to work as before. But now all the cases where a cell contained =<user function name> have been changed to =@<user function name>.

If I delete the @ it does not appear to make any difference to the operation of the function, and if I type = in a cell followed by a function name, the function works fine but does not have the @ in front of it.

What has happened here, and do I need to do anything about it?

GSerg
  • 73,524
  • 17
  • 153
  • 317
  • 1
    Excel has changed its default interpretation of formulas. Previously the Implicit Intersection was the default (hence not denoted in any way), and there did not exist Dynamic Arrays. Now the Dynamic Arrays are the default, and the former-default Implicit Intersection is now denoted with `@`. When you enter formulas with a new Excel *using the formula bar*, you are now doing so under Dynamic Array rules, so no `@` appears. Formulas entered in earlier Excels will have `@` to preserve their behavior in their original Excel version. You do or do not remove the `@` depending on which mode you want. – GSerg Jun 18 '21 at 11:17

0 Answers0