尝试删除工作表中的行和列时,Mudit遇到问题。他有时会收到消息“无法将对象移出此工作表”。其他人报告在尝试插入行或列时收到消息。

发生的情况是,删除或插入后,Excel无法正确处理对象(例如图形,图形对象,文本框,图片甚至注释)。如果在插入行或列时发生错误,则意味着插入会将对象推到工作表的右侧或底部边界之外。当然,解决方案是检查工作表右侧或底部的内容,并根据需要对这些对象进行更改(移动或删除它们)。

如果在删除行或列时发生错误,通常是因为在这些行或列中的单元格上附加了对象,而删除行或列会使对象以某种方式“孤立”。例如,假设您要删除列D,并且有一个与单元格D4相关联的对象。该对象不必位于D列上方;它可能在几列之外,但仍属于单元格D4。如果删除列D,则对象不再具有锚点。 Excel的解决方案?在对将被编辑孤立的对象执行某些操作之前,请勿删除D列。

如果将工作表中的对象格式化,使其不能被Excel自动移动或调整大小,也可能发生此问题,然后尝试删除与对象关联的列或行。在这种情况下,您可能想要尝试更改工作表中对象的格式。如果工作表中有许多此类对象,则以下宏有助于进行更改:

Sub ResetShapes()

Dim s As Shape     On Error Resume Next     For Each s In ActiveSheet.Shapes         s.Placement = xlMoveAndSize     Next End Sub

Microsoft提供了一个知识库文章,可能会对解决此问题有所帮助。本文专门解决了隐藏行和列的问题,但是当您尝试删除它们时,解决方案也可以使用。您可以在此页面上查看:

http://support.microsoft.com/kb/211769

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(809)适用于Microsoft Excel 2007和2010。您可以在以下旧版Excel菜单界面中找到本技巧的版本: