太多不同的单元格格式

它也可能发生在你身上。

在 Excel 中处理大型工作簿时,有时您会做一些完全无害的事情(例如,添加一行或插入一大块单元格),然后突然出现一个窗口,显示错误“太多不同的单元格格式”:

有时这个问题会以更令人不快的形式出现。 昨晚,像往常一样,您在 Excel 中保存并关闭了您的报告,今天早上您无法打开它 - 显示一条类似的消息,并建议从文件中删除所有格式。 快乐是不够的,同意吗? 让我们看看纠正这种情况的原因和方法。

为什么会这样

当工作簿超过 Excel 可以存储的最大格式数时,会出现此错误:

  • 对于 Excel 2003 及更早版本 - 这些是 4000 种格式
  • 对于 Excel 2007 及更高版本,这些是 64000 种格式

此外,这种情况下的格式意味着格式选项的任何独特组合:

  • 字体
  • 馅料
  • 细胞构架
  • 数字格式
  • 条件格式

因此,例如,如果您像这样设置一小块工作表的样式:

… 然后 Excel 会记住工作簿中的 9 种不同的单元格格式,而不是乍一看的 2 种,因为围绕周边的粗线实际上会创建 8 种不同的格式选项。 再加上设计师与字体和填充共舞,大报告中对美的渴望将导致 Excel 必须记住的成百上千的类似组合。 它本身的文件大小也不会减少。

当您重复将其他文件中的片段复制到工作簿中时(例如,使用宏或手动组装工作表时),也经常会出现类似的问题。 如果不使用仅值的特殊粘贴,那么复制范围的格式也会插入到书中,这很快就会导致超出限制。

怎么处理

这里有几个方向:

  1. 如果您有旧格式 (xls) 的文件,请将其重新保存为新格式 (xlsx 或 xlsm)。 这将立即将标准从 4000 种提高到 64000 种不同的格式。
  2. 使用命令删除多余的单元格格式和额外的“漂亮的东西” 主页 — 清除 — 清除格式 (首页—清除—清除格式). 检查工作表上是否有完全格式化的行或列(即到工作表的末尾)。 不要忘记可能隐藏的行和列。
  3. 检查这本书是否有隐藏和超级隐藏的纸张——有时“杰作”隐藏在它们上面。
  4. 删除选项卡上不需要的条件格式 主页 — 条件格式 — 管理规则 — 显示整个工作表的格式规则 (主页 - 条件格式 - 显示此工作表的规则).
  5. 检查从其他工作簿复制数据后是否积累了过多不必要的样式。 如果在选项卡上 主页 (首页) 在列表中 样式 (样式) 大量的“垃圾”:

    …然后你可以用一个小宏摆脱它。 点击 Alt + F11键 或按钮 Visual Basic中 标签 开发人员 (开发商), 通过菜单插入一个新模块 插入 - 模块 并在那里复制宏代码:

Sub Reset_Styles() '为 ActiveWorkbook.Styles 中的每个 objStyle 删除所有不必要的样式 On Error Resume Next If Not objStyle.BuiltIn Then objStyle.Delete On Error GoTo 0 Next objStyle '从新工作簿复制标准样式集 Set wbMy = ActiveWorkbook设置 wbNew = Workbooks.Add wbMy.Styles.Merge wbNew wbNew.Close savechanges:=False End Sub    

您可以使用键盘快捷键启动它。 Alt + F8键 或通过按钮 (宏) 标签 开发人员 (开发商). 该宏将删除所有未使用的样式,只留下标准集:

  • 如何在 Excel 中使用条件格式自动突出显示单元格
  • 什么是宏,在 Visual Basic 中复制宏代码的位置和方法,如何运行它们
  • Excel 工作簿变得非常沉重和缓慢——如何解决?

发表评论