声明变量错误以指定单个单元格

时间:2019-02-12 16:47:34

标签: excel vba

我相信,如果我可以正确声明测试名称,该代码将起作用。它应该是原始工作表上的单元格E2。如果我输入“ E2”,它可以工作,但是测试名不会增加。

我也尝试过Range。看不到我在做什么错。

Sub findcomponents()


Dim raw As Worksheet: Set raw = ThisWorkbook.Sheets("rawdata")
Dim res As Worksheet: Set res = ThisWorkbook.Sheets("resultcomponents")
Dim temp As Worksheet: Set temp = ThisWorkbook.Sheets("uploadtemplate")

Dim testname As String
Dim LR1 As Long, LR2 As Long, i As Long, j As Long


LR1 = raw.Range("A" & raw.Rows.Count).End(xlUp).Row
LR2 = res.Range("A" & res.Rows.Count).End(xlUp).Row
testname = raw.Cells(j, 5)

For j = 2 To LR1

    For i = 2 To LR2
        If res.Cells(i, 4) = testname Then
            res.Range(res.Cells(i, 2), res.Cells(i, 4)).Copy
            temp.Range("B10000").End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
            raw.Range(raw.Cells(j, 3), raw.Cells(j, 3)).Copy
            temp.Range("A10000").End(xlUp).Offset(1, 0).PasteSpecial 
xlPasteValues
        End If
    Next i
Next j

End Sub

代码应在一系列测试中进行测试,并在单独的工作表上与测试组件进行比较-将标本ID和组件ID以及说明粘贴到第三张纸上

1 个答案:

答案 0 :(得分:1)

j在使用时未填充。您需要以数字值开头j或将此行添加到循环中