VBA, Excel. Execute code that offsets & resizes a range & then copies it. "Compile error: Invalid watch expression"

VBA, Excel. Execute code that offsets & resizes a range & then copies it. "Compile error: Invalid watch expression"

我正在尝试偏移、调整大小和复制包含数据的范围,并且正在立即输入这行代码 window:

shAll.Range("A1:I78").Offset(1).Resize(.Rows.Count - 1, .Columns.Count - 
1).SpecialCells(xlCellTypeVisible).copy

当我按 enter 键时出现此错误:"Compile error: Invalid watch expression"

是语法问题吗?

这部分代码在立即执行时工作正常window:

shAll.Range("A1:I78").Offset(1).select

它正在按照我想要的方式偏移。剩下的就是resize和copy了

顺便说一下,范围 shAll.Range("A1:I78") 包含所有单元格中的数据。

提前致谢!

您可以做一个名称范围或输入您需要的实际范围。

Worksheets("Sheet").Range("namedrange_d").Resize(, 4).Offset(6, 0).Copy _
  Worksheets("Sheet1").Range("namedrange").Resize(, 4).Offset(6, 0)

您没有指定 .Rows.Columns 适用于哪个对象。

如果它们适用于范围则

With shAll.Range("A1:I78")
    .Offset(1).Resize(.Rows.Count - 1, .Columns.Count - 1).SpecialCells(xlCellTypeVisible).copy
End with

shAll.Range("A1:I78").Offset(1).Resize(shAll.Range("A1:I78").Rows.Count - 1, _
shAll.Range("A1:I78").Columns.Count - 1).SpecialCells(xlCellTypeVisible).copy