Несоответствие типов при удалении макроса пустых строк - PullRequest
1 голос
/ 08 июля 2019

Я создал макрос для удаления всех пустых строк со всех листов. Макрос выполняется, но я получаю ошибку «Несоответствие типов». Почему я получаю эту ошибку? Спасибо!

Sub RemoveEmptyRows()

Dim I As Integer, row As Long
Dim ws As Worksheet

For Each ws In ThisWorkbook.Worksheets

    For row = 10 To 1 Step -1
        If ws.Cells(row, 4).Value = "" Then ws.rows(row).Delete
    Next row
Next ws

End Sub

1 Ответ

0 голосов
/ 09 июля 2019

Это происходит из-за .Value = "", и значение ячейки является ошибкой (возвращается несоответствие типов).Это хорошая работа:

Sub RemoveEmptyRows()

    Dim i As Long, row As Long
    Dim ws As Worksheet

    For Each ws In ThisWorkbook.Worksheets
        For row = 10 To 1 Step -1
            If IsError(ws.Cells(row, 4)) Then
                ws.Rows(row).Delete
            ElseIf ws.Cells(row, 4).Value = "" Then
                ws.Rows(row).Delete
            End If
        Next row
    Next ws

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