为什么我的 Excel 公式中突然出现了“@”(“at”)符号?

为什么我的 Excel 公式中突然出现了“@”(“at”)符号?

总结

谁能解释一下为什么我在许多 Excel 电子表格的许多公式中看到“@”符号出现,而以前它们并没有出现过?

它们不是@mentions,也不是结构化引用或表格公式的一部分,也不是任何其他常见的嫌疑人。


细节

系统信息

  • Excel for Mac,版本 16.34 (20020900),Office 365 的一部分
  • MacOS Catalina 10.5.3

正如我所说,它们不是 @mentions,我也没有使用结构化引用。另外,我不是 Lotus 用户,也从来不是,所以我不会像那些家伙有时似乎习惯的那样将 @ 符号塞进公式中。事实上,除了偶尔作为 TEST() 格式代码的一部分之外,我想不出我曾经在公式中使用过 @ 的任何时候,而这也不是这里发生的事情。

例子

以下是一个例子(随机抓取)。这个:

=IFS(DX$33="","",ISNUMBER(MATCH(DX$33,$AJ$33:$DR$33,0)),HLOOKUP(DX$33,$AJ$33:$DR$1033,ROWS(DX$33:DX36)+1,0),TRUE,0)

现在看起来像这样:

=@IFS(DX$33="","",ISNUMBER(MATCH(DX$33,$AJ$33:$DR$33,0)),HLOOKUP(DX$33,$AJ$33:$DR$1033,@ROWS(DX$33:DX36)+1,0),TRUE,0)

正如我所说,这只是一个随机示例。还有很多其他示例,其中很多都没有像 IFS() 这样“奇特”的东西,所以我不认为这是原因。

仅仅是显示效果吗?

现在,在上面我说“看起来”是因为我猜想神秘的 @ 可能实际上并不在文件本身中,而只是由 Excel 显示。我这样说是因为我至少有一个文件,我可以从其 DropBox 版本历史记录中看到只有一个版本 - 我的(无 @)原始版本。因此它开始时没有 @ 符号,并且它没有改变(根据 DropBox 版本控制),但我现在可以看到 @ 符号。一种解释是 Excel 发生了变化,而不是我的文件,因此变化仅仅是一个显示伪像。哦,删除 @ 似乎对公式没有影响。

@真实存在

另一方面,为了好玩,我尝试创建一个全新的公式:

=@A1

当我尝试输入该公式时,Excel 警告我“某些旧版本的 Excel 不支持此公式”,并建议我将其替换为以下变体:

=A1

因此,这种 @ 用法确实似乎是一种实际的东西,而且并非一直存在。(这显然适用于在行引用中与 [] 结合使用,但这不是(是吗!?))

无论如何,当 Excel 询问我是否要删除 @ 时,我抛开了谨慎,点击了“管好你自己的事儿!”(又称“否”)。Excel 插入了我原来的 @ 化版本,从我所看到的情况来看,它很好,并且其行为与 Excel 试图说服我使用的无 @ 版本完全一样。

所以?

有人能解释这一切吗?Excel 是否最近更新了,引入了新的 @ 语法?我说的最近是指最多最近 2-3 个月。我有一些在 12 月中下旬创建的文件,我知道当时这些文件没有 @,但现在却变成了 @ 符号。但如果是这样,那么为什么 Excel 会不经我同意就随意更改文件,尤其是考虑到它自己也承认这可能会造成向后兼容性问题?为什么我的 Excel 文件只有一个版本,我知道它没有变化,但随着这些 @ 符号的出现,它似乎已经发生了变化?

我已经搜索了超过一个小时的线索,但还是没有找到任何确切的线索。一个困难是“@”是一个广泛使用的字符,因此 Google 给出的很多结果都是无关紧要的废话。

答案1

恭喜您刚刚获得了新的动态公式。它@告诉动态数组公式仅返回一个值,基本上就像公式的旧数组版本一样。

新的动态数组公式想要SPILL自动获取值。

例如将随机值放入A1:A15

在此处输入图片描述

然后在 B1 中输入:

=INDEX($A$1:$A$15,SEQUENCE(15))

正常输入。Excel 会将值“溢出”。

在此处输入图片描述

现在将 添加@到 中的公式前面B1。公式将不再溢出。

在此处输入图片描述

但是就像旧样式一样,人们可以选择公式B1:B15并按 Ctrl-Shift-Enter 而不是 Enter @,它会像以前一样填充范围。

在此处输入图片描述

至于自动更改,如果没有新功能它就无法工作。

但研究一下新的动态数组函数,它们会让很多事情变得更容易。但对于任何新事物,在共享时都必须考虑向后兼容性。

相关内容