0

简单的问题,我觉得自己像个白痴,不知道这一点。发生的事情是我从几个 word 文档中导入了一些数据,这给我留下了所有工作表上的一些无关数据。我想通过并让它自动删除每张纸的前三行(通常我不介意,但对于 100 多张纸来说有点烦人)。

这是我到目前为止所尝试的:

Sub delete_rows()

Dim delRange As Range
Dim wkSheet As Worksheet

For Each wkSheet In ThisWorkbook

   Set delRange = Rows("1:3")
   delRange.Delete
Next wkSheet

End Sub

我得到了这个错误:

“运行时错误‘438’:

对象不支持此属性或方法”

错误出现在 for 循环的开始。

有没有机会得到帮助?

谢谢!

4

1 回答 1

3

您正在使用 Worksheet 类型而不是变量。此外,您没有在For Each循环中引用 Worksheets 集合。

For Each wkSheet in ThisWorkbook.Worksheets
    '...
Next wkSheet

此外,如果您只是删除 3 行,则不需要使用变量。你可以直接做:

Rows("1:3").Delete
于 2013-09-07T21:13:28.460 回答