Требуется объект Ошибка: if range.value = "x" - PullRequest
0 голосов
/ 22 апреля 2020

Я пытаюсь использовать значение ячейки, полученное из диапазона в операторе if, но я получаю эту ошибку.

Run-time error '424':
Object required

Это то, что пытается сделать мой код.

Set rng = ActiveSheet.Range("B:B").Find("hello").offset(1, 0)

test123 = False
While test123 = False
    If rng.Value = ""           <- error line
        rng.EntireRow.Delete
    Else
        test123 = True
    End If
Wend

Любая помощь будет потрясающей, спасибо!

Редактировать: Мои данные выглядят примерно так. Я пытаюсь удалить все пустые строки между "привет" и следующей непустой строкой. Итак, мой код ищет hello, а затем смещает строку на 1. If используется для проверки, является ли следующая строка пустой, что будет повторяться, пока следующая строка не будет пустой

table 1

Row Header:
bye
hi
hello


thank you

1 Ответ

0 голосов
/ 23 апреля 2020

проблема заключается в том, что при удалении первой строки rng удаляется и выдаст ошибку при повторном обращении.

Dim rng As Range
Set rng = ActiveSheet.Range("B:B").Find("hello")
If rng Is Nothing Then Exit Sub

Dim rw As Long
rw = rng.Row + 1

Do While ActiveSheet.Cells(rw, 2) = ""
    Rows(rw).Delete
Loop
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...