我正在尝试在 VBA 中进行复制,作为更大宏的一部分,因此它需要在特定工作表中未知范围的 VBA 中。
如果我在那个工作表中,我有这个代码可以工作:
Sub Copy()
Range("O2", Range("O" & Cells(Rows.Count, "A").End(xlUp).Row)).copy
End Sub()
我有以下适用于特定范围的内容:
Sub Test()
Worksheets("Data").Range("O2:O10").Copy
End Sub()
如何使第二个代码不具体。
谢谢,
最佳答案
您应该练习始终完全符合您所有的 Sheet
和 Range
对象。
下面的代码有点长,但最好定义和设置所有对象和变量。
代码
Option Explicit
Sub Test()
Dim Sht As Worksheet
Dim LastRow As Long
' set your worksheet object
Set Sht = ThisWorkbook.Worksheets("Data")
With Sht
' get last row in column A
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
' copy dynamic range in column O
.Range("O2:O" & LastRow).Copy
End With
End Sub
关于vba - 从特定工作表复制未知范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52556551/