2013-08-29 3 views
2

Я пытаюсь скопировать вставку строк значений с одного листа на другой, но продолжать придумывать ошибку времени выполнения 1004: Определяемая приложением или объектная ошибка. ошибка находится в первой строке двух ниже, и я не знаю, где я ошибаюсь.copy paste Диапазон в VBA Excel

Set copyRange = Worksheets("Sheet2").range(A & i + 1 & CA & i + 1) 
copyRange.Copy Destination:=Cells(countD, 2) 

Код должен скопировать строку за раз и вставить ее в лист по умолчанию.

Редактировать полный код

Dim List1 As range 
Dim List2 As range 
Dim lastRow As Integer 
Dim countD As Integer 
Dim found As Boolean 
Dim copyRange As range 

Set List1 = ThisWorkbook.Sheets("Sheet1").range("H2:H600") 
Set List2 = ThisWorkbook.Sheets("Sheet2").range("I2:I600") 
countD = 2 
lastRow = Application.CountA(ThisWorkbook.Sheets("Sheet2").range("C:C")) 

For i = lastRow To 2 Step -1 
    found = False 
    value1 = List1.Item(i, 1) 
    For Each value2 In List2 
     If value1 = value2 Then 
      found = True 

      Exit For 
     End If 
    Next 

    If found = False Then 
     Set copyRange = Sheets("Sheet1").range("A" & i + 1 & "CA" & i + 1) 
     copyRange.Copy Destination:=Cells(countD, 2) 
     Sheets("Discrepancies").Cells(countD, 1) = "name not found" 
     ThisWorkbook.Sheets("Sheet1").Cells(i + 1, 1).EntireRow.Delete 
     Cells(countD, 8).Interior.ColorIndex = 3 

     countD = countD + 1 

    End If 

Next 
+0

диапазон Try ("А" и я + 1 & "CA" & i + 1) – Vasim

+0

нет, тоже не работает, тот же код ошибки – Intern87

+0

Я бы предложил предоставить полный код ... для определения фактической ошибки .... – Vasim

ответ

6

Точно так же как комментарий Васим упоминает - с добавлением двоеточия : перед CA

Sub copyRangeOver() 

Dim i As Integer 
i = 6 

Dim copyRange As Range 
Set copyRange = ThisWorkbook.Worksheets("Sheet2").Range("A" & i + 1 & ":CA" & i + 1) 

Dim countD As Integer 
countD = 10 
copyRange.Copy Destination:=Cells(countD, 2) 


End Sub 
+0

Ahhh ... Я должен был немного позаботиться .... :) – Vasim

+2

(@Vasim жаль, что справился и вложил свой комментарий! ... позвольте мне посмотреть, смогу ли я это сделать вы...) ; теперь вы прыгнули до 300 очков !!! – whytheq

+0

Спасибо Whytheq ... – Vasim

Смежные вопросы