Excel 将数据从两个工作表复制到ech other顶部的两个其他工作表中
在这张照片中 你可以看到我正在努力实现的目标和实际发生的事情。我已经能够确定数据正在覆盖先放置的数据。我需要从以下位置复制数据:Excel 将数据从两个工作表复制到ech other顶部的两个其他工作表中,excel,vba,Excel,Vba,在这张照片中 你可以看到我正在努力实现的目标和实际发生的事情。我已经能够确定数据正在覆盖先放置的数据。我需要从以下位置复制数据: MIM数据到MIM QA 将BCRS数据发送至BCRS QA MIM数据发送至BCRS QA(复制到下一个空行) BCRS数据到MIM QA(复制到下一个空行) 这是我正在使用的代码。我尝试过几种不同的方法,但都没有成功。我从另一个工作表中借用了这段代码,该工作表正在执行类似的操作,即获取新数据并将其添加到下一个空行 Sub QA_Data_Copy_1603_A(
Sub QA_Data_Copy_1603_A()
Application.ScreenUpdating = False
Dim March_Swivel As Workbook ' Source Workbook
Set March_Swivel = Workbooks("Swivel - Master - March 2016.xlsm")
Dim MIM_Data As Worksheet ' Source Worksheet
Set MIM_Data = March_Swivel.Sheets("MIM Data")
Dim BCRS_Data As Worksheet ' Source Worksheet
Set BCRS_Data = March_Swivel.Sheets("BCRS Data")
Dim MIM_QA As Worksheet ' Destination Worksheet
Set MIM_QA = March_Swivel.Sheets("MIM QA")
Dim BCRS_QA As Worksheet ' Destination Worksheet
Set BCRS_QA = March_Swivel.Sheets("BCRS QA")
' Source Rows
Dim MLastRow As Long
MLastRow = MIM_Data.Range("A" & Rows.Count).End(xlUp).row
Dim BLastRow As Long
BLastRow = BCRS_Data.Range("A" & Rows.Count).End(xlUp).row
' Destination Rows
Dim MRow As Long
MRow = MIM_QA.Cells(Rows.Count, 1).End(xlUp).row
Dim BRow As Long
BRow = BCRS_QA.Cells(Rows.Count, 1).End(xlUp).row
MIM_Data.Range("A2:J" & MLastRow).Copy Destination:=MIM_QA.Range("A" & MRow + 1)
BCRS_Data.Range("A2:J" & BLastRow).Copy Destination:=BCRS_QA.Range("A" & BRow + 1)
MIM_Data.Range("A2:J" & MLastRow).Copy Destination:=BCRS_QA.Range("A" & BRow + 1)
BCRS_Data.Range("A2:J" & BLastRow).Copy Destination:=MIM_QA.Range("A" & MRow + 1)
Worksheets("BCRS Data").Columns("A:J").AutoFit
Worksheets("MIM Data").Columns("A:J").AutoFit
Worksheets("BCRS QA").Columns("A:J").AutoFit
Worksheets("MIM QA").Columns("A:J").AutoFit
Call QA_Color_Text
Application.ScreenUpdating = True
Range("A" & Rows.Count).End(xlUp).Offset(1).Select
End Sub
在第二次移动数据之前,需要重新计算最后一行 由于我如何设置测试,下面的代码中有一些修改,但是您可以看到重新计算
Option Explicit
Sub QA_Data_Copy_1603_A()
Application.ScreenUpdating = False
' Dim March_Swivel As Workbook ' Source Workbook
' Set March_Swivel = Workbooks("Swivel - Master - March 2016.xlsm")
Dim MIM_Data As Worksheet ' Source Worksheet
Set MIM_Data = Sheets("MIMData")
Dim BCRS_Data As Worksheet ' Source Worksheet
Set BCRS_Data = Sheets("BCRSData")
Dim MIM_QA As Worksheet ' Destination Worksheet
Set MIM_QA = Sheets("MIMQA")
Dim BCRS_QA As Worksheet ' Destination Worksheet
Set BCRS_QA = Sheets("BCRSQA")
' Source Rows
Dim MIMDataLRow As Long
MIMDataLRow = MIM_Data.Range("A" & Rows.Count).End(xlUp).Row
Dim BCRSDataLRow As Long
BCRSDataLRow = BCRS_Data.Range("A" & Rows.Count).End(xlUp).Row
' Destination Rows
Dim MIMQALRow As Long
MIMQALRow = MIM_QA.Cells(Rows.Count, 1).End(xlUp).Row
Dim BCRSQALRow As Long
BCRSQALRow = BCRS_QA.Cells(Rows.Count, 1).End(xlUp).Row
MIM_Data.Range("A2:J" & MIMDataLRow).Copy Destination:=MIM_QA.Range("A" & MIMQALRow + 1)
MIMQALRow = MIM_QA.Cells(Rows.Count, 1).End(xlUp).Row
BCRS_Data.Range("A2:J" & BCRSDataLRow).Copy Destination:=MIM_QA.Range("A" & MIMQALRow + 1)
BCRS_Data.Range("A2:J" & BCRSDataLRow).Copy Destination:=BCRS_QA.Range("A" & BCRSQALRow + 1)
BCRSQALRow = BCRS_QA.Cells(Rows.Count, 1).End(xlUp).Row
MIM_Data.Range("A2:J" & MIMDataLRow).Copy Destination:=BCRS_QA.Range("A" & BCRSQALRow + 1)
' Worksheets("BCRS Data").Columns("A:J").AutoFit
' Worksheets("MIM Data").Columns("A:J").AutoFit
' Worksheets("BCRS QA").Columns("A:J").AutoFit
' Worksheets("MIM QA").Columns("A:J").AutoFit
' Call QA_Color_Text
Application.ScreenUpdating = True
' Range("A" & Rows.Count).End(xlUp).Offset(1).Select
End Sub
谢谢@oldsugh工作得很好。