Переменная объекта или переменная блока не установлена. Код неожиданно поставил на ошибку - PullRequest
0 голосов
/ 23 октября 2019

Пожалуйста, дайте мне знать об ошибке в этом коде. Несколько часов назад он работал нормально и неожиданно начал выдавать ошибку

"Переменная объекта или переменная блока не установлена"

'
' Find Macro
'

'
Dim rw As Integer
rw = 1

 Do Until IsEmpty(Sheet2.Cells(rw, 1))
    Cells.Find(What:=Sheet2.Cells(rw, 1)).Activate

         On Error GoTo hello


         With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 65535
        .TintAndShade = 0
        .PatternTintAndShade = 0

       Sheet2.Cells(rw, 2).Value = "Found"

hello:          rw = rw + 1
Sheet2.Cells(1, 3) = Sheet2.Cells(1, 3) + 1


      End With
      Loop
MsgBox "Total E-Forms Searched " & Sheet2.Cells(1, 3)
End Sub

Находит данные на листе 1и выделяет его желтым цветом. Критерии в листе 2.

1 Ответ

0 голосов
/ 23 октября 2019

Вы можете сделать что-то вроде этого:

Dim c As Range, f As Range

Set c = Sheet2.Cells(1, 1)

Do Until IsEmpty(c)
    Set f = ActiveSheet.Cells.Find(What:=c.Value, lookat:=xlWhole)
    'got a match?
    If Not f is nothing then
         'highlight the match
         With f.Interior
            .Pattern = xlSolid
            .PatternColorIndex = xlAutomatic
            .Color = 65535
            .TintAndShade = 0
            .PatternTintAndShade = 0
         End With

         Sheet2.Cells(1, 3) = Sheet2.Cells(1, 3) + 1

         c.offset(0, 1).Value = "Found"
     End if

     Set c = c.offset(1,0) 'next row 
Loop
MsgBox "Total E-Forms Searched " & Sheet2.Cells(1, 3)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...