Excel每次在新行上复制对sheet2更改的行

时间:2016-02-29 23:50:24

标签: excel macros

我在sheet1和H列上有一个库存清单,您可以通过下拉列表选择要添加的数量。然后,这会在同一行进行计算,从库存值中减去。我需要的是当在H列中选择一个值并按下一个宏按钮时,任何已添加库存的行都会被复制并粘贴到新行上的工作表2中,所以每次库存时我都会得到所有更改添加了下来的表2

这就是我所拥有的,但它每次都会覆盖数据,并且只复制H列中具有值的第一行。

请你帮忙

For Each i In Range("H10:H150")
       If i.Value > 0 Then
           i.Select
           ActiveCell.Rows("1:1").EntireRow.Select
           Selection.Copy

               Sheets("Record").Range("A1048576").End(xlUp).Offset(1, 0).PasteSpecial _
                    Paste:=xlPasteValues
           Application.CutCopyMode = False
       End If
   Next i

1 个答案:

答案 0 :(得分:0)

将if语句中的所有内容更改为这一行:

Sheets("Record").Rows(Sheets("Record").Range("A1048576").End(xlUp).Offset(1, 0).Row).Value = Sheets("Sheet1").Rows(i.Row).Value

您还想将父级分配给for循环中的第一个范围。所以:

For Each i In Sheets("Sheet1").Range("H10:H150")
   If i.Value > 0 Then
       Sheets("Record").Rows(Sheets("Record").Range("H1048576").End(xlUp).Offset(1, 0).Row).Value = Sheets("Sheet1").Rows(i.Row).Value
   End If
Next i