【问题标题】:Macro to delete row in 2007 not working same working in 20032007 年删除行的宏在 2003 年不起作用
【发布时间】:2011-08-01 21:23:27
【问题描述】:

当我打开我的 Excel 工作表时,此代码仅调用一次。将数据从一张表复制到另一张表,就在下面显示的删除代码上方。如果我再次运行宏,那么它会按预期工作。
在 2003 年,当我打开工作表时,复制和删除都可以工作。

这是给我带来问题的代码:

Rows(ExceptionList & ":" & ExceptionList).Select 
Selection.Delete Shift:=xlUp

【问题讨论】:

  • 这是一个 Microsoft Excel 问题吗?请为正确的语言或环境添加标签。
  • 这个问题是给superuser的。此外,“不一样”并没有提供任何可以用来帮助您的细节。你需要更具体。不过解决方法很简单——重新录制宏,看源码。
  • 嗨,当我打开 Excel 工作表时,代码只调用了一次。将数据从一张工作表复制到另一张工作表,就在删除的上方。如果我再次运行宏,那么它正在删除。
  • 在 2003 年,当我打开工作表时,复制和删除都可以工作。
  • 我在 Workbook_Open() 中添加了删除,当我在 2007 年打开时它不起作用但在 2003 年工作。

标签: excel ms-office office-2007 vba


【解决方案1】:

ExceptionList 是字符串类型吗?

我会避免整个字符串连接业务,只说Rows(rowNumberToDelete).Delete Shift:=xlUp

另外,整个.Select-Selection.白话是不必要且低效的。这就是 Excel 机器生成宏的方式,但有思想的人不应该这样写。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-30
    • 2010-09-09
    • 2014-07-23
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    • 2013-01-31
    相关资源
    最近更新 更多