什么是溢出错误?如何解决#SPILL! Excel 365 中的错误
众所周知,Office 365 附带了 Excel 365。 Microsoft 已向 Excel 365 添加了各种新功能。其中一项功能是 动态数组公式。 通常,该公式只会将单个值作为结果返回到单元格。但是现在,有了这个新功能,可以返回多个值。
例如,在 Excel 2019 及更早版本中,假设您在单元格上应用公式 =D2:D5,结果将仅限于第一个单元格。

当我们必须对所有相应的单元格应用公式时,我们使用了数组表示法(Ctrl+Shift+Enter)。但是,在 Excel 365 中并非如此。当您应用相同的公式时,值会自动溢出到所有相应的单元格上。请参阅下图,了解更多详情。

结果溢出的单元格区域称为 播放范围 .参考下图

笔记:
- 这 游戏 使用动态数组自动启用(目前仅 Excel 365 支持此功能)并且无法禁用该功能。
- 在所有有或没有函数的公式上都启用了溢出功能。
播放错误 当公式打算返回多个值时会看到,但是,结果不能放在单元格上。错误如下所示:

遇到#SPILL 错误的可能原因是:
- 溢出范围包含一些值,因此无法在单元格中填充结果
- 溢出范围已合并单元格。
- 在 Excel365 中打开带有支持隐式交集的公式的旧工作表(使用 Excel 2016 或更早版本创建)时。
- 当您在 Excel 表上应用动态数组公式时。
如果您在 excel 中看到 #SPILL 错误,请不要担心。在本文中,我们将展示确定此问题根本原因的不同方法,并探讨修复#SPILL 错误的方法
目录
- 确定导致#SPILL 错误的原因
- 溢出范围不为空白时要遵循的修复
- 当溢出范围合并单元格时要遵循的修复
- 表中溢出范围时要遵循的修复
- 溢出范围内存不足时要遵循的修复
- 当溢出范围未知时要遵循的修复
- 当溢出范围太大时要遵循的修复
确定导致#SPILL 错误的原因
当您看到溢出错误时,首先检查您看到错误的原因,这样做,
第 1 步:单击显示的单元格 #游戏! 错误
第二步:点击 感叹号 如下所示
第 3 步:第一行告诉我们是什么导致了错误。例如,在这种情况下,错误被视为溢出范围不是空白

溢出范围不为空白时要遵循的修复
当您看到 溢出范围不是空白
修复 1:删除阻塞溢出范围的数据
如果溢出范围内的单元格中已有一些数据,您将在应用公式时看到#SPILL 错误。
当您可以清楚地看到阻塞溢出范围的数据时
考虑以下示例,当您对数据应用公式 =D2:D5 时,会引发 SPILL 错误,因为存在 我在这 在溢出范围内。

为了摆脱#SPILL 错误,只需移动数据或从溢出范围中删除数据。
当阻塞溢出范围的数据被隐藏时
在某些情况下,阻塞溢出范围的数据是隐藏的,并且不是很明显,如案例 1 所示。请考虑以下示例,

在这种情况下,要找到阻塞溢出范围的单元格,请按照以下步骤操作:
第 1 步:单击显示的单元格 #游戏! 错误
第二步:点击 感叹号 如下图,可以看到报错是因为 溢出范围不是空白的。
第三步:在下拉菜单中,点击 选择阻碍细胞

第 4 步:阻塞溢出范围的单元格突出显示,如下所示

现在,您知道哪个单元格阻塞了,请检查究竟是什么导致了问题。
第 5 步:仔细检查单元格后,您可以看到隐藏在单元格中的一些数据。

如上图所示,有一些数据。由于字体为白色,因此不容易识别阻塞。为了摆脱错误,从溢出范围内的单元格中删除数据。
使固定 二: 删除自定义数字格式; ; ;应用于细胞
有时,当自定义数字格式 ; ; ; 应用于单元格,有机会看到 SPILL 错误。在这种情况下,
第 1 步:单击显示的单元格 #游戏! 错误
第二步:点击 感叹号 如下所示。
第三步:在下拉菜单中,点击 选择阻碍细胞

第 4 步:阻塞溢出范围的单元格突出显示,如下所示

第 5 步:右键单击阻塞单元格。
第 6 步:选择 格式化单元格

第 7 步:打开单元格格式窗口。前往 数字 标签
第 8 步:从左侧窗格中,选择 风俗
第 9 步:从右侧窗格中,将类型从 ; ; ;到 一般的
第十步:点击 好的 按钮

当溢出范围合并单元格时要遵循的修复
如果您看到错误是因为 溢出范围已合并单元格 如下所示,

第一步:点击 选择阻碍细胞 从下拉菜单中

第 2 步:阻碍细胞将是 突出显示
第 3 步:在 家 选项卡,点击 合并和中心
第 4 步:从下拉菜单中选择 取消合并单元格

修复时要遵循 表中的溢出范围
Excel 表格不支持动态数组公式。如果您在 excel 表上看到 #SPILL 错误,如下所示,并显示消息 表中的溢出范围 ,

步骤 1:完全选择表
第二步:点击 表设计 顶部菜单栏中的选项卡
第 3 步:选择 转换为范围

第四步:弹出确认对话框,点击 是的

溢出范围内存不足时要遵循的修复
当您尝试确定 #SPILL 错误的原因时,如果您看到错误状态 记不清 ,那么这是因为您使用的动态数组公式引用了一个很大的范围,在这种情况下,excel 运行 记不清 导致溢出错误。为了克服这个错误,可以尝试引用一个较小的范围。
当溢出范围未知时要遵循的修复
当 Spilled Array 的大小发生变化并且 excel 无法确定 Spilled 范围的大小时,会出现此错误。通常,当您使用随机函数(如 RANDARRAY、RAND 或 RANDBETWEEN)以及动态数组函数(如 SEQUENCE)时,会出现此错误。
为了更好地理解它,请考虑下面的示例,假设使用了函数 SEQUENCE(RANDBETWEEN(1,100))。这里RANDBETWEEN生成一个大于等于1且小于等于100的随机整数,而SEQUENCE生成序列号(例如-SEQUENCE(5)生成1,2,3,4,5)。但是,RANDBETWEEN 是一个不稳定的函数,每次打开或更改 Excel 工作表时都会不断更改其值。因为,因此,SEQUENCE 函数将无法确定它必须生成的数组的大小。它不知道要生成多少值,因此会引发 SPILL 错误。
当您确定错误的原因时,您会看到 泄漏范围未知

为了修复这种错误, 尝试使用适合您需要的不同配方。
当溢出范围太大时要遵循的修复
假设您正在确定原因,并且您注意到看到错误是因为 溢出范围太大 如下所示。

当动态数组没有到位时,excel中有一种叫做隐式交集的东西,即使公式有可能返回多个结果,它也会强制返回一个结果。考虑一个例子,如果公式 =B:B*5% 应用在 Excel 2019 或更早版本上,使用隐式交集,结果如下:

但是,当在 Excel 365 中使用相同的公式时,您会看到以下错误

为了解决这个问题,请尝试以下修复
修复 1:使用 @ 运算符应用隐式交集
当我们说 =B:B ,动态数组将引用整个 B 列。相反,我们可以强制 excel 使用 @ 运算符强加隐式交集
将公式更改为 [电子邮件保护]:B*5%

因为添加了隐式交集,所以公式将应用于单个单元格。为了扩展公式,
1. 只需点击如下所示的点

2. 根据需要将其向下拖动到单元格上。这将对这些单元格应用相同的公式。

修复 2:而不是引用列,而是引用范围
在公式, =B:B*5% , 我们指的是 B 列。而是指一个特定的范围, = B2:B4 * 5%

就这样
我们希望这篇文章能提供有用的信息。
如果您能够使用上述方法解决问题,请点赞并发表评论。
谢谢你的阅读。