Excel VBA Range.Find

时间:2015-05-11 21:07:47

标签: excel vba excel-vba

我正在尝试从列表中查找一个数字并使用range.find()在另一个工作表中搜索该数字但是我一直得到运行时错误'91':对象变量或未设置块变量。

    Dim i As Integer
    i = 2
    Sheets("Sheet1").Activate
    Dim findIt As String
    Do Until Cells(i, 1).Value = "TOTALS"
    findIt = Sheets("Sheet1").Cells(i, 1) ' storing the CPU ID
    Sheets("REF").Activate
    Columns("E").Select
    'On Error GoTo noDice
    Selection.Find(What:=findIt, After:=ActiveCell, LookIn:=xlFormulas, _
    LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
    MatchCase:=False, SearchFormat:=False).Select
    Selection.Offset(RowOffset:=0, ColumnOffset:=-2).Select
    Selection.Copy
    Sheets("Sheet1").Select
    Cells(i, 2).PasteSpecial (xlPasteValuesAndNumberFormats)
    i = i + 1
    Loop

表单“REF”存在,findIt确实包含单元格的值。我在另一个工作簿中使用相同的代码。区别在于,在代码工作的工作簿中,findIt来自一个单元格,值是一般编号,其中问题工作簿中的findIt是特殊编号(葡萄牙邮政编号)。 (当我逐步完成代码时,在Selection.Find滚动时,我已经确认findIt的值为70,选择值为0070)。

0 个答案:

没有答案