3

我有一个要删除的工作表。最初它包含 3830 行。尝试删除工作表时,Excel 会崩溃并完全关闭。我认为这可能是由于工作表上的数据量很大,并且其中一列中存在公式。所以我从列中删除了部分的公式,然后删除了块中的行,每次都保存。我删除了数据,直到只剩下 30 行,但仍然无法删除工作表而不会崩溃。在此之后,我通过 VBA 并删除了对工作表的所有引用,以防出现某种依赖问题。这仍然不允许我删除工作表。

除了数据之外,工作表中还嵌入了一个命令按钮,我确定这是问题的原因。该按钮没有相关的点击事件——点击它似乎什么也不做。

要修改按钮,我必须启用设计模式,我认为这是因为它是一个 Active X 控件。如果我尝试通过右键单击选项剪切按钮,Excel 会崩溃。如果我尝试通过选择按钮并按删除键来删除按钮,Excel 会崩溃。该按钮称为“排序”而不是“命令按钮 1”或类似名称,但我无法在名称管理器中找到对该名称的引用。

我已经通过对象属性,可以编辑命令按钮对象,移动对象,调整大小等。我也通过格式控制,但没有成功。最初对象被锁定,但工作表没有。我已经解锁了该对象,但这同样没有任何区别。

我还在工作表上创建了一个新的 Active X 命令按钮和一个表单控件命令按钮,并且能够毫无问题地删除它们。有问题的工作簿包含很多工作表,因此理想情况下,我希望能够解决此问题,而无需将要保留的每个工作表复制到新工作簿或类似的修复程序中。

任何建议将不胜感激!

4

2 回答 2

1

我遇到过同样的问题。我添加了命令按钮,由于某种原因,当我尝试删除它时,excel 崩溃了。

解决方案:

  1. 创建一个空白的 excel 文件并用新名称保存。
  2. 使用命令对象打开文件。
  3. 右键单击工作表并使用 MoveOrCopy。
  4. 检查复制选项并将工作表复制到新创建的文件中。

您的所有公式 NamedCells 都已成功复制。如果你有任何 VB 代码,你需要手动复制它。

于 2014-12-23T14:01:21.887 回答
0

您可以禁用 Excel 工作簿的自动计算。使用 VBA 代码:Application.Calculation = xlManual 手动:Formluas > Calculaitions Options > Manual 保存文件然后尝试。

由于工作表上只有一个按钮,并且假设没有其他数据,您可以尝试使用 VBA 删除工作表 ThisWorkbook.Sheets("SheetName").Delete

于 2013-09-30T09:51:21.363 回答