Удалить ячейку длиной не более 8 символов - PullRequest
0 голосов
/ 18 марта 2019

У меня есть несколько таблиц с несколькими тысячами строк.Мне нужен макрос, который будет подсчитывать количество символов в ячейках столбца «А» и удалять строку, если она меньше 8 символов.

Ответы [ 2 ]

0 голосов
/ 18 марта 2019

Вы можете попробовать:

Option Explicit

Sub test()

    Dim ws As Worksheet
    Dim Lastrow As Long, Row As Long

        'Loop sheets
        For Each ws In ThisWorkbook.Worksheets

            With ws
                'Find Last row of column A in sheet ws
                Lastrow = .cells(.Rows.Count, "A").End(xlUp).Row

                'Loop rows from bottom to top
                For Row = Lastrow To 1 Step -1

                    'Check value lenght
                    If Len(.Range("A" & Row).Value) > 8 Then
                        .Rows(Row).Delete
                    End If

                Next Row

            End With

        Next ws

End Sub
0 голосов
/ 18 марта 2019

пожалуйста, запустите этот код в Excel

Sub DelRows()
Dim LR As Long, i As Long
Application.ScreenUpdating = False
LR = Range("A" & Rows.Count).End(xlUp).Row
For i = LR To 1 Step -1
    If Len(Range("A" & i).Value) < 8 Then Rows(i).Delete
Next i
Application.ScreenUpdating = True
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...