Ошибка переполнения для скрытия строк на основе значения ячейки в цикле - PullRequest
0 голосов
/ 19 июня 2019

Я пытаюсь написать макрос, который скрывает все пустые строки, пока не будет обнаружено значение «стоп», но я получаю сообщение об ошибке переполнения, когда код достигает части «Entirerow.hidden = True».Буду признателен, если кто-нибудь поможет мне это исправить?

Dim Count as Integer
Count = 0
Dim Rge as Range
Set Rge = Sheets("ForPrint").Range("b24").Offset(count,0)

Do Until Rge.Value = "Stop"

If Rge.Value = "" Then
Rge.EntireRow.Hidden = True

End if

Count = Count + 1

Loop

1 Ответ

0 голосов
/ 19 июня 2019

На самом деле вы не устанавливаете диапазон в цикле:

Этот простой цикл сделает работу:

Dim Rge As Range
Dim cl As Range

Set Rge = Sheets("ForPrint").Range("B:B").Find("Stop")

For Each cl In Sheets("ForPrint").Range("B24:B" & Rge.Row).SpecialCells(xlCellTypeBlanks)

    cl.EntireRow.Hidden = True

Next

В противном случае в вашем коде Попробуйте:

Dim Count As Integer
Count = 0
Dim Rge As Range

Set Rge = Sheets("ForPrint").Range("b24").Offset(Count, 0)

Do Until Rge.Value = "Stop"

Set Rge = Sheets("ForPrint").Range("b24").Offset(Count, 0)
If Rge.Value = "" Then
Rge.EntireRow.Hidden = True

End If

Count = Count + 1

Loop
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...