我在 Windows 7 机器上有一个 Excel 文档,Office 2007(如果这部分重要的话,我不确定,但只是随便说说)。这是所有员工电话号码的列表。如果我需要生成新页面,我可以单击第 2 页,表格将自动再次生成。
问题是,有人把它弄乱了,因为它在网络驱动器上,现在显示我有超过 960,000 行数据,但实际上没有!我按 CTRL+END 查看最后一个单元格中是否有任何数据,所以我清除了它,删除了该行和列,但仍然没有修复它。删除后,它几乎看起来像是自我复制。
我该如何修复此问题而不是重新创建整个文档?
答案1
微软有一份出色的支持文档,名为如何重置 Excel 中的最后一个单元格。
从该文件中:
最后一个单元格被设置在当前正在使用的工作表范围之外的最常见原因是格式过多。当您格式化整行和整列时,某些类型的格式可能会导致最后一个单元格被设置为实际正在使用的范围的下方或右侧很远的单元格。
根据您问题下方的评论,应用于所有行的边框格式似乎是罪魁祸首。
我使用了上面链接提供的插件代码,将文件大小从几兆字节减少到几百k。
答案2
还要检查是否有任何单元格带有注释,而注释框已被拖到远离单元格的位置。您可以在电子表格的第二行中设置一个单元格,该单元格带有注释,其注释框位于第 7000 行附近,这将强制 Excel 将第 7000 行视为电子表格的最后一行。
答案3
就像上面的评论者一样 - 我也遇到了同样的问题,我的 excel 文档中多出了超过一百万行,这是因为注释最终离单元格很远。此页面有一个简单的 VBA 代码,您可以使用它来清理文档,然后您可以删除它并保存文档而无需代码,问题就会得到解决。https://www.extendoffice.com/documents/excel/2252-excel-reset-comment-positions.html
按住 ALT + F11 键打开 Microsoft Visual Basic for Applications 窗口。
单击插入 > 模块,然后将以下代码粘贴到模块窗口中。
VBA 代码:重置活动工作表中的所有注释位置
1 Sub ResetComments()
2 'Update 20141110
3 Dim pComment As Comment
4 For Each pComment In Application.ActiveSheet.Comments
5 pComment.Shape.Top = pComment.Parent.Top + 5
6 pComment.Shape.Left = pComment.Parent.Offset(0, 1).Left + 5
7 Next
8 End Sub
然后按F5键运行此代码,活动工作表中的所有注释位置都立即被重置。