VBA复制范围并粘贴到另一个工作表

时间:2018-12-19 09:47:40

标签: excel vba

我正在尝试将一个范围从一个单元格复制到同一行中另一个单元格的末尾。 我在if循环中有以下代码。

Sheet2.Range(Cells(i, 2), Cells(i, c)).Copy
Sheet3.Cells(i, 2).Paste

Sheet2和Sheet 3的结构相同,因此我在行中使用相同的变量。

最重要的是,如何将单元格粘贴到循环中该特定行的下一个空单元格?

2 个答案:

答案 0 :(得分:1)

请替换为以下内容:

Dim rn As Range, rn1 As Range, sh As Worksheet, sh1 As Worksheet


Set sh = Sheet2
Set sh1 = Sheet3

With sh

Set rn = .Range(.Cells(i, 2), .Cells(i, c))
Set rn1 = sh1.Cells(i, 2)


rn.Copy rn1

End With

如果c不是变量,请替换为“ c”

答案 1 :(得分:0)

尝试一下:

Sheet2.Range(Cells(i, 2), Cells(i, c)).Copy destination:=Sheet3.Cells(i, 2)

如果分两步进行操作,则可能需要.Resize目标范围以匹配源范围的大小。