@
我在工作簿中的一些公式的开头看到了,例如: =@SUM(A1:A10)
,=@VLOOKUP(3;F9:H12;2;FALSE)
。
看起来这是Excel的一个新功能。
有人知道这是什么@
意思吗?
答案1
在已具有新的动态数组公式的 Excel 365 版本中,所有公式都默认被视为数组公式。如果函数在特定公式中不需要新的默认数组行为,则可以使用 @ 符号来阻止该行为。
如果在非 DA 版本的 Excel 中打开相同的工作簿,它将不可见。
如果在非 DA 版本的 Excel 中输入 @ 符号,则在将公式确认到单元格中时,它将被悄悄删除。
编辑:作为 Excel 函数前缀的 @ 符号不应与用于 Lotus 兼容性的 @ 符号混淆。这是两个不同的东西。
请考虑以下屏幕截图:
这是在启用动态数组的 Excel 中获取的。B2 中的公式是=ROW(1:4)
,只需按 Enter 确认即可。该公式被视为数组公式,结果会自动“溢出”到下一行。
如果不希望出现这种情况,可以在函数前面加上 @ 符号,这样它就会像没有动态数组的旧版 Excel 中的非数组公式一样运行。在旧版 Excel 中,我必须选择 4 个单元格,键入公式,然后按 Ctrl-Shift-Enter 确认,才能让公式将值返回到四个单元格中。
答案2
@标志通常被称为隐式交集运算符支持动态数组公式法。可以在Excel 2019 和 365。
@ 符号与旧版电子表格几乎相同,只是它使用 @ 来指示可能使用隐式交集的位置,而旧版电子表格则是默默地执行此操作。
隐式交集遵循以下规则:
如果单元格值是单个项目,则返回该项目。
如果值在某个范围内,则返回与公式位于同一行或同一列的单元格。
如果它是一个数组,则选择左上角的值。
考虑到 2013 年和 2016 年的版本,@可以通过TABLE找到。
- 使用列标题来承载行中的值。
- 请考虑以下示例。如果公式以 开头
@
,则不会返回错误,但会@
在以 结尾时立即删除符号进入,并获取其值100
。
=@VLOOKUP(G112,A111:E111,2,FALSE)
注意:
在旧版本的 Excel 中,返回多单元格区域或数组的函数将以 为前缀@
。
答案3
在 Lotus 程序中,'@' 是指示公式开头的方式。然后,Excel 除了使用“=”之外还允许类似的用法,但是,Excel 会自动将 '@' 更改为 '='。有关更多详细信息: https://www.quora.com/What-does-the-symbol-do-in-Excel-It-keeps-showing-up-as-why-is-this-happening
答案4
我同意 AbdelAziz AbdelLatef 的观点。
我测试了 Excel 中的“@”符号,发现 Excel 会立即变为等号。似乎“@”被“=”覆盖了
所以这可能不是 Excel 的新功能。据我所知,最近 Excel 发布的新功能目前仅对 Office Insider 可用。您可以在链接中查看: https://blog-insider.office.com/2019/06/13/dynamic-arrays-and-new-functions-in-excel/