有人可以帮我编写一些 VBA 代码吗?
我正在尝试在工作簿之间复制 2 个单元格范围(两个工作簿都应事先创建,因为我不希望代码动态创建新工作簿)。
首先我需要复制这些范围- 来自 booka.xls 的“表 3”,范围:单元格 H5 到 H 列中包含数据的最后一行 将其复制到 bookb.xls 的“工作表 1”,从单元格 B2 开始,直到 B 列中尽可能多的单元格
其次我需要复制这些范围- 来自 booka.xls 的“表 3”,范围:单元格 K5 到 K 列中包含数据的最后一行 将其复制到 bookb.xls 的“工作表 1”,从单元格 D2 开始,直到 D 列中尽可能多的单元格
这是我到目前为止所拥有的:
Sub CopyDataBetweenBooks()
Dim iRow As Long
Dim wksFr As Worksheet
Dim wksTo As Worksheet
wksFr = "C:\booka.xls"
wksTo = "C:\bookb.xls"
Set wksFrom = Workbooks(wksFr).Worksheets("Sheet 3")
Set wksTo = Workbooks(wksTo).Worksheets("Sheet 1")
With wksFrom
For iRow = 1 To 100
.Range(.Cells(iRow, 8), .Cells(iRow, 9)).Copy wksTo.Cells(iRow, 8)
Next iRow
End With
End Sub
最佳答案
假设您引用了 wksFrom
和 wksTo
,代码应如下
wksFrom.Range(wksFrom.Range("H5"), wksFrom.Range("H5").End(xlDown)).Copy wksTo.Range("B2")
wksFrom.Range(wksFrom.Range("K5"), wksFrom.Range("K5").End(xlDown)).Copy wksTo.Range("D2")
关于vba - 在工作簿之间复制单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6287405/