我在工作簿中有2个工作表,两个工作表都有2列,如下图所示
第1张:
第2张:
我正在尝试比较两个工作表的列(Comp),如果找到匹配项,则复制工作表2中的所有(垫)数据,并将它们插入到工作表1中的FLOC下,如结果所示:
到目前为止,我已经尝试读取两个文件并比较成功的结果,但是我无法理解如何循环遍历第二张工作表以将行复制并插入到工作表1中,我的代码如下
Sub Coupler()
Dim ws As Worksheet
Dim x As Long
Dim y As Long
Dim z As Long
x = 0
y = 0
z = 0
Application.EnableCancelKey = xlErrorHandler
Set FLOCSheet = Application.ActiveWorkbook.Worksheets("FLOC")
Set MATSheet = Application.ActiveWorkbook.Worksheets("MAT")
lrFLOC = FLOCSheet.Cells(Rows.Count, 2).End(xlUp).Row
lrMAT = MATSheet.Cells(Rows.Count, 2).End(xlUp).Row
For x = 2 To lrFLOC
For y = 2 To lrMAT
If (StrComp(Trim(FLOCSheet.Cells(x, 2).Value), Trim(MATSheet.Cells(y, 1).Value), vbTextCompare) = 0) Then
FLOCSheet.Rows(x & ":" & x + 1).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
FLOCSheet.Cells(x,1) = MATSheet.Cells(ws.Rows.Count, 1).End(xlUp).Row
For z = lrFLOC To 1 Step -1
FLOCSheet.Rows(z & ":" & z + 1).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
FLOCSheet.Range(FLOCSheet.Cells(z, 1), MATSheet.Cells(z + 1, 1)) = MATSheet.Cells(z + 2, 1).Value
Next z
Next y
Next x
End Sub