Excel VBA从第行开始粘贴列

Excel VBA从第行开始粘贴列,excel,vba,Excel,Vba,我试图复制一个工作簿工作表中的所有列并粘贴到另一个工作簿工作表,但粘贴所有列时从A8行开始 我已经有了从一个工作簿工作表复制和粘贴到另一个工作簿工作表的代码,我只是想不出要添加哪些代码来粘贴从A8行开始的列 这就是我到目前为止所做的: Set Data = Workbooks.Open(ThisWorkbook.Path & "\Technical Audit.xlsm", UpdateLinks:=xlUpdateLinksAlways) Worksheets("Raw Data").

我试图复制一个工作簿工作表中的所有列并粘贴到另一个工作簿工作表,但粘贴所有列时从A8行开始

我已经有了从一个工作簿工作表复制和粘贴到另一个工作簿工作表的代码,我只是想不出要添加哪些代码来粘贴从A8行开始的列

这就是我到目前为止所做的:

Set Data = Workbooks.Open(ThisWorkbook.Path & "\Technical Audit.xlsm", UpdateLinks:=xlUpdateLinksAlways)
Worksheets("Raw Data").Select

Set SourceImageColumn = Workbooks("Audit Dashboard.xlsm").Worksheets("Raw Image Data").Columns("A:D")
Set TargetImageColumn = Workbooks("Technical Audit.xlsm").Worksheets("Images").Columns("A:D")

SourceImageColumn.Copy Destination:=TargetImageColumn

Data.Save
提前感谢您的帮助

**更新了代码** 如果两个工作簿都打开,此方法将起作用。我不知道你有没有这个

Sub macro3()
Dim iRow        As Long
Dim lastRow     As Long
Dim nextRow     As Long
Dim wksSource   As Worksheet
Dim wksTarget   As Worksheet

Set wksSource = Workbooks("Audit Dashboard.xlsm").Worksheets("Raw Image Data")
Set wksTarget = Workbooks("Technical Audit.xlsm").Worksheets("Images")

lastRow = wksSource.Range("A" & wksSource.Rows.Count).End(xlUp).Row

nextRow = 8

With wksSource
    For iRow = 1 To lastRow
        .Range(.Cells(iRow, 1), .Cells(iRow, 4)).Copy wksTarget.Cells(nextRow, 1)
        nextRow = nextRow + 1
    Next iRow
End With
End Sub
**更新了代码** 如果两个工作簿都打开,此方法将起作用。我不知道你有没有这个

Sub macro3()
Dim iRow        As Long
Dim lastRow     As Long
Dim nextRow     As Long
Dim wksSource   As Worksheet
Dim wksTarget   As Worksheet

Set wksSource = Workbooks("Audit Dashboard.xlsm").Worksheets("Raw Image Data")
Set wksTarget = Workbooks("Technical Audit.xlsm").Worksheets("Images")

lastRow = wksSource.Range("A" & wksSource.Rows.Count).End(xlUp).Row

nextRow = 8

With wksSource
    For iRow = 1 To lastRow
        .Range(.Cells(iRow, 1), .Cells(iRow, 4)).Copy wksTarget.Cells(nextRow, 1)
        nextRow = nextRow + 1
    Next iRow
End With
End Sub
修正的答案

将从
wsCore
列A:D复制,并从A8:D8开始粘贴到
wsData

修正的答案


将从
wsCore
列A:D复制,并从A8:D8开始粘贴到
wsData
中,或者这只是因为我正在将数据从一个工作簿复制到另一个工作簿,上面的代码是我唯一可以使用的代码,我不知道如何使用上面的示例,同时仍然维护工作簿之间的复制和粘贴。或者只是因为我正在将数据从一个工作簿复制到另一个工作簿,上面的代码是我唯一可以使用的代码,我不知道如何使用上面的示例,同时仍在维护工作簿之间的复制和粘贴。嗨,巴德,谢谢你的回复。这是我需要从A8开始粘贴的目标工作表(图像)。可以从第一行复制(原始图像数据)中的所有列。我试图交换代码,但没有效果,有什么想法吗?`Dim sourceImageColumn作为范围,targetImageColumn作为范围设置sourceImageColumn=工作簿(“Audit Dashboard.xlsm”)。工作表(“原始图像数据”)。列(“A:D”)设置targetImageColumn=工作簿(“Technical Audit.xlsm”)。工作表(“图像”)。范围(“A8:D”)和工作表(“图像”).Cells(Sheets(“Images”).Rows.Count,“a”).End(xlUp).Row)sourceImageColumn.Copy Destination:=targetImageColumn`让我看看:-)先生,您是图例的定义。非常感谢。没问题。请注意,您需要打开两个工作簿。嗨,巴德,谢谢您的回复。这是目标工作表(图像)我需要从A8开始粘贴。可以从第一行复制(原始图像数据)中的所有列。我尝试交换代码,但没有效果,有什么想法吗?`Dim sourceImageColumn作为范围,targetImageColumn作为范围集sourceImageColumn=工作簿(“Audit Dashboard.xlsm”)。工作表(“原始图像数据”)。列(“A:D”)设置targetImageColumn=工作簿(“Technical Audit.xlsm”)。工作表(“图像”)。范围(“A8:D”和工作表(“图像”)。单元格(工作表(“图像”)。行。计数,“a”)。结束(xlUp)。行)sourceImageColumn.Copy Destination:=targetImageColumn`让我看看:-)先生,您是图例的定义。非常感谢。没问题。请注意,您需要打开两本工作簿。