2013-10-30 132 views
2

在Excel中遇到一个非常令人沮丧的问题 - 无法删除最后一个单元格;它锁定在上次使用的列和行1048576你跳之前,共同修复了,我已经想尽解决我能在互联网上找到,包括:Excel最后一个单元格错误

  • 删除所有未使用的行,删除所有未使用的列
  • 保存,关闭,在所有未使用的行重新
  • 清晰格式&列
  • 各项宏观的引用worksheet.UsedRange,UsedRange.Rows.Count,UsedRange(1),等等。
  • 以不同的顺序上述的许多排列,总是跟着一个保存/重新打开

这是发生在双方的Excel 2007和Excel 2013年甚至当我删除工作表上一切(即选择全部,单击右键,删除),保存/打开,最后一个单元STILL保持引用最后一行。

我可以将工作表的活动区域复制并粘贴到新工作表中,但我之前发生过这种情况,并且希望找到一个完整的修复程序以供将来参考(或者知道这确实是一个错误和我不只是在这里坚果!)

+1

使用此范围(“A”和Rows.Count).End(xlUp).Row'来获取最后一行。 – Santosh

+1

你如何确定“最后一个细胞”? –

+1

我有一种感觉,你正在使用'usedRange'来找到最后一个单元格。如果是,那么请参阅[THIS](http://stackoverflow.com/questions/11169445/error-finding-last-used-cell-in-vba) –

回答

0

我也有这种情况几次 - 工作表几乎是空的地方,但由于一些奇怪的原因,Excel存储所有1M行 - 并没有任何正常的技巧工作。

我到底是什么了在这种情况下做的是直接编辑.xlsx文件:

  1. 重命名的.xlsx(或.XLSM)文件为.zip,你会看到的内容
  2. 提取文件xl \ worksheets \ sheet1.xml(或者其中任何一个纸张非常大 - 请注意编号可能需要与Excel中的编号对齐)
  3. 使用有效的编辑器编辑该文件。我可以推荐UltraEdit,尤其是。因为它具有“XML转换为CR/LF”功能(格式下),该功能将XML格式化为可读格式。 (如果是1M行,则此格式化可能需要几分钟!)
  4. 在文件搜索<row r="X"中,其中X是您想要保留的最后一行。从这里删除一切,直到</sheetData>
  5. 保存文件(通常在倒数第三行),把它重新在.zip和重命名的.zip回到原来的.xlsx/.XLSX

完成!

相关问题