循环重复粘贴

时间:2018-05-29 09:26:31

标签: vba loops tweak

我上周左右一直在研究VBA代码,并且可以从我需要的结果中获得大约5%的代码。

我有2个工作表:

Sheet1 - 其中包含E:E中的数据列表  Sheet2 - 其中包含G2:G中的数据列表  两个列表在列表中都有匹配的值。

我要做的是检查sheet1中的每个单元格是否在sheet2中,如果是,则将该行中的数据复制并粘贴到sheet2匹配值的相对行中。这一点,我可以做........我在努力的地方是当我在sheet1中有一个值但在sheet2中有多个值。我只想在一次匹配中复制和粘贴数据,但它会将信息复制并粘贴到两个匹配项中。同样,如果我在sheet1中有2个值,但在sheet2中只有一个值,则它会覆盖信息。

下面我展示了我正在使用的代码。

 Sub FillinAlegs()
   Application.ScreenUpdating = False
     Dim names As Range, name As Range, values As Range, value As Range, rng As Range

   Set values = Worksheets("Sheet1").Range("E1:E" & Worksheets("Sheet1").Range("E" & Rows.Count).End(xlUp).Row) '
   Set names = Worksheets("Sheet2").Range("G2:G" & Worksheets("Sheet2").Range("G" & Rows.Count).End(xlUp).Row) '
   For Each name In names
    For Each value In values
     If value.value = name.value Then
        Worksheets("Sheet1").Range("A" & value.Row & ":P" & value.Row).Copy Destination:=Worksheets("Sheet2").Range("C" & name.Row & ":R" & name.Row)
     End If
    Next value
   Next name
 Application.ScreenUpdating = True
 End Sub

请帮帮我。我把头发拉出来!

谢谢

Sheet2 Sheet1

0 个答案:

没有答案