Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 将数据从一张图纸复制到另一张图纸中的下一可用行_Excel_Vba - Fatal编程技术网

Excel 将数据从一张图纸复制到另一张图纸中的下一可用行

Excel 将数据从一张图纸复制到另一张图纸中的下一可用行,excel,vba,Excel,Vba,我以前从未使用过宏,但是有人能告诉我在下面的宏中缺少了什么,所以工作表1中的数据将被复制到工作表2中的下一行吗?我已经尝试过“LastRow”、“NextRow”命令,但我无法正确执行。任何帮助都会很好 Sheets("Sheet1").Range("B2").Select Selection.Copy iRow = Worksheets("Sheet2").Cells(Rows.Count, 1).End(x1up).Row + 1 Sheets("Sheet2").Range ("B" &a

我以前从未使用过宏,但是有人能告诉我在下面的宏中缺少了什么,所以工作表1中的数据将被复制到工作表2中的下一行吗?我已经尝试过“LastRow”、“NextRow”命令,但我无法正确执行。任何帮助都会很好

Sheets("Sheet1").Range("B2").Select
Selection.Copy
iRow = Worksheets("Sheet2").Cells(Rows.Count, 1).End(x1up).Row + 1
Sheets("Sheet2").Range ("B" & iRow)
ActiveSheet.Paste

试试这两种。它是
xlup
而不是
x1up
,并且您没有粘贴到目标单元格(并且
选择
是不必要的)


关于这一点,我有以下代码。但是,我的问题是,我有多个版本的宏运行并将信息拉到同一个工作表中。我需要能够让宏找到下一行,而不是覆盖页面上已有的内容

特定行()中的子产品值 调光范围 作为整数的Dim J 将源设置为工作表 将目标变暗为工作表

' Change worksheet designations as needed
Set Source = ActiveWorkbook.Worksheets("mongodb")
Set Target = ActiveWorkbook.Worksheets("Inputs")

J = 2     ' Start copying to row 1 in target sheet
For Each c In Source.Range("A2:A100")   ' Do 1000 rows
    If c = "Product" then
       Source.Rows(c.Row).Copy Target.Rows(J)
       J = J + 1
    End If
Next c
端接头

我一直通过将“J=2”行更改为几行来解决这个问题,但我的其他工作表的行数不同,希望它们只是复制并粘贴到输入工作表中,而不是相互覆盖

iRow = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlup).Row + 1
Sheets("Sheet2").Range ("B" & iRow).value=Sheets("Sheet1").Range("B2").value
' Change worksheet designations as needed
Set Source = ActiveWorkbook.Worksheets("mongodb")
Set Target = ActiveWorkbook.Worksheets("Inputs")

J = 2     ' Start copying to row 1 in target sheet
For Each c In Source.Range("A2:A100")   ' Do 1000 rows
    If c = "Product" then
       Source.Rows(c.Row).Copy Target.Rows(J)
       J = J + 1
    End If
Next c