vba复制一行到另一个工作表
Sub CopyRowToAnotherSheet()
Dim wsSource As Worksheet
Dim wsDestination As Worksheet
' 设置源和目标工作表
Set wsSource = ActiveSheet
Set wsDestination = ThisWorkbook.Worksheets("Sheet2")
' 假设我们要复制的是第一行
' 复制源工作表的第一行
wsSource.Rows(1).Copy
' 粘贴到目标工作表的第一行
wsDestination.Rows(1).PasteSpecial Paste:=xlPasteValues ' 仅复制值
'wsDestination.Rows(1).PasteSpecial Paste:=xlPasteFormats ' 复制格式
'wsDestination.Rows(1).PasteSpecial Paste:=xlPasteColumnWidths ' 复制列宽
' 取消选中复制的内容
Application.CutCopyMode = False
End Sub
自己工程代码
Sub 复制打印数据数组()
Dim i As Integer, j As Integer
Dim a()
Dim b()
Worksheets("追踪单打印 -A6").Activate '先激活需要操作的表
a = Range("K2:s" & Range("k2").End(xlDown).Row) '将数据存入数组中 '将数据存入数组中
Worksheets("数据表").Activate '先激活需要操作的表
b = Range("A3:AD" & Range("b3").End(xlDown).Row) '将数据存入数组中
Dim wsSource As Worksheet
Dim wsDestination As Worksheet
' 设置源和目标工作表
Set wsSource = ThisWorkbook.Worksheets("数据表")
Set wsDestination = ThisWorkbook.Worksheets("打印数据")
For i = 1 To UBound(a)
For j = 1 To UBound(b)
If a(i, 1) = b(j, 1) Then
'Sheets("分析表").Range("Q" & (i + 1)) = b(j, 3)
' Sheets("打印数据").Range("A" & (i + 1)) = b(j, 3)
' 复制源工作表的第一行
'wsSource.Rows(j).Copy
' 粘贴到目标工作表的第一行
' wsDestination.Rows(i).PasteSpecial Paste:=xlPasteValues ' 仅复制值
'wsDestination.Rows(1).PasteSpecial Paste:=xlPasteFormats ' 复制格式
'wsDestination.Rows(1).PasteSpecial Paste:=xlPasteColumnWidths ' 复制列宽
Sheets("打印数据").Range("A" & (i + 1)) = b(j, 1)
Sheets("打印数据").Range("B" & (i + 1)) = b(j, 2)
Sheets("打印数据").Range("C" & (i + 1)) = b(j, 3)
Sheets("打印数据").Range("D" & (i + 1)) = b(j, 4)
Sheets("打印数据").Range("E" & (i + 1)) = b(j, 5)
Sheets("打印数据").Range("F" & (i + 1)) = b(j, 6)
Sheets("打印数据").Range("G" & (i + 1)) = b(j, 7)
Sheets("打印数据").Range("H" & (i + 1)) = b(j, 8)
Sheets("打印数据").Range("I" & (i + 1)) = b(j, 9)
Sheets("打印数据").Range("J" & (i + 1)) = b(j, 10)
Sheets("打印数据").Range("K" & (i + 1)) = b(j, 11)
Sheets("打印数据").Range("L" & (i + 1)) = b(j, 12)
Sheets("打印数据").Range("M" & (i + 1)) = b(j, 13)
Sheets("打印数据").Range("N" & (i + 1)) = b(j, 14)
Sheets("打印数据").Range("O" & (i + 1)) = b(j, 15)
Sheets("打印数据").Range("P" & (i + 1)) = b(j, 16)
Sheets("打印数据").Range("Q" & (i + 1)) = b(j, 17)
Sheets("打印数据").Range("R" & (i + 1)) = b(j, 18)
Sheets("打印数据").Range("S" & (i + 1)) = b(j, 19)
Sheets("打印数据").Range("T" & (i + 1)) = b(j, 20)
Sheets("打印数据").Range("U" & (i + 1)) = b(j, 21)
Sheets("打印数据").Range("V" & (i + 1)) = b(j, 22)
Sheets("打印数据").Range("W" & (i + 1)) = b(j, 23)
Sheets("打印数据").Range("X" & (i + 1)) = b(j, 24)
Sheets("打印数据").Range("Y" & (i + 1)) = b(j, 25)
Sheets("打印数据").Range("Z" & (i + 1)) = b(j, 26)
Sheets("打印数据").Range("AA" & (i + 1)) = b(j, 27)
Sheets("打印数据").Range("AB" & (i + 1)) = b(j, 28)
Sheets("打印数据").Range("AC" & (i + 1)) = b(j, 29)
Sheets("打印数据").Range("AD" & (i + 1)) = b(j, 30)
Exit For '退出for
End If
Next
Next
'For i = 1 To UBound(a)
' For j = 1 To UBound(b)
'If a(i, 1) = b(j, 2) Then
'Sheets("分析表").Range("Q" & (i + 1)) = b(j, 3)
' Exit For '退出for
'End If
'Next
'Next
End Sub
浙公网安备 33010602011771号