Excel中"#溢出!"错误的解决方法
Excel中"#溢出!"错误的解决方法
在使用Excel时,如果你遇到"#溢出!"错误,这通常意味着你的公式返回了多个结果,而Excel无法将这些结果正确地显示在工作表中。本文将详细介绍导致该错误的各种情况,并提供相应的解决方案,帮助你快速解决这一问题。
当公式返回多个结果,并且Excel无法将这些结果返回到网格时,会返回"#溢出!"错误。有关这些错误类型的更多详细信息,请参阅以下帮助主题:
溢出范围不为空
当溢出的数组公式的溢出范围不为空时,会发生此错误。
选择公式以显示指示预期溢出范围的虚线边框。通过选择公式,将显示错误检查警报。
选择"检查错误"警报,然后选择"选择阻碍单元格"选项,立即将阻塞单元格 () 。然后,可以通过删除或移动阻碍单元格的条目来清除错误。清除阻碍后,数组公式会按预期溢出。
大小不确定
Excel无法确定溢出数组的大小,因为它易变,并且在计算过程之间会调整大小。例如,以下公式将触发此"#溢出!"错误:
=SEQUENCE(RANDBETWEEN(1,1000))
动态数组的大小调整可能会触发其他计算过程,以确保电子表格已完全计算出来。如果数组的大小在这些其他计算过程中继续变化且不稳定,则Excel会将动态数组解析为"#溢出!"。
此错误值通常与RAND、RANDARRAY和RANDBETWEEN函数的使用相关联。其他易变函数(例如OFFSET、INDIRECT和TODAY)在每个计算过程中不会返回不同的值。
扩展到工作表边缘之外
例如,当放置在单元格E2中时,公式**=VLOOKUP(A:A,A:C,2,FALSE)**之前只会查找单元格A2中的ID,如下例所示。但是,在Excel动态数组中,该公式会导致"#溢出!"错误,因为Excel将查找整个列,返回1,048,576个结果,并命中Excel网格的末尾。
有三种简单的方法来解决此问题:
方法 | 公式 |
---|---|
1 | 仅引用你感兴趣的查找值。此公式样式将返回动态数组,但不适用于Excel表。 |
2 | 仅引用同一行上的值,然后向下复制公式。这种传统的公式样式适用于表,但不会返回动态数组。 |
3 | 请求Excel使用@运算符执行绝对交集,然后向下复制公式。此公式样式适用于表,但不会返回动态数组。 |
表公式
Excel表不支持溢出的数组公式。尝试将公式移出表格,或将表格转换为区域,(选择"表格设计>工具">"转换为区域")。
内存不足
尝试输入的溢出数组公式导致Excel内存不足。请尝试引用较小的数组或范围。
溢出到合并单元格
溢出的数组公式无法溢出到合并的单元格中。请取消合并相关单元格,或将公式移到与合并单元格不相交的另一个区域。
选择公式以显示指示预期溢出范围的虚线边框。通过选择公式,将显示错误检查警报。
可以选择错误检查警报,然后选择"选择阻碍单元格"选项,以立即将阻塞单元格 () 。清除合并单元格后,数组公式会按预期溢出。
无法识别/回退
Excel无法识别或无法协调导致此错误的原因。请确保公式包含你的方案所需的所有参数。