2014-06-30 113 views
0

我有下面列出的代码,我想复制包含if语句内的规则的每一行并将它们粘贴到第二张纸中。这是我: “范围(单元格(J,1),细胞(J,1)。选择从一张纸复制到另一张纸时的运行时错误

Sub Button1_Click() 

    Dim i As Long, j As Long 
    Dim mainworkBook As Workbook 
    Set mainworkBook = ActiveWorkbook 


    Lastrow = Cells(Rows.Count, "Y").End(xlUp).Row 
    j = 1 

    For i = 5 To Lastrow 
     If (IsEmpty(Range(Cells(i, 2), Cells(i, 2)))) Then 
      If IsNumeric(Range(Cells(i, 25), Cells(i, 25))) Then 
       Range(Cells(i, 1), Cells(i, 1)).Value = "T" 
       Range(Cells(i, 2), Cells(i, 24)).Value = Range(Cells(i - 2, 2), Cells(i - 2, 24)).Value 
       Range(Cells(i, 26), Cells(i, 26)).Value = Range(Cells(i - 2, 26), Cells(i - 2, 26)).Value 
       Range(Cells(i, 28), Cells(i, 28)).Value = Range(Cells(i - 2, 28), Cells(i - 2, 28)).Value 
       Range(Cells(i, 30), Cells(i, 36)).Value = Range(Cells(i - 2, 30), Cells(i - 2, 36)).Value 
       Range(Cells(i, 38), Cells(i, 39)).Value = Range(Cells(i - 2, 38), Cells(i - 2, 39)).Value 
       mainworkBook.Worksheets("a").Rows(i).EntireRow.Copy 
       mainworkBook.Worksheets(“b”).Range(Cells(j,1),Cells(j,1).Select 
       mainworkBook.Sheets(“b”).Paste 
       j = j + 1 
      End If 
     End If 
    Next i 

    End Sub 

它给我上的埃罗‘mainworkBook.Worksheets(’B)” 行。任何提示?

+0

在那一行上没有关闭圆括号? – Arvo

回答

1

您不关闭的括号。

mainworkBook.Worksheets("b").Range(Cells(j, 1), Cells(j, 1)).Select 
0

您不能在工作表是不活动的选择单元格,你应该有资格的细胞与工作表呼叫过于,因为它发生它只有一个单元格,因此您不需要这种语法,并且更容易直接复制:

mainworkBook.Worksheets("a").Rows(i).EntireRow.Copy Destination:=mainworkBook.Worksheets(“b”).Cells(j,1) 
相关问题