Kiljes
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Подскажите, пожалуйста. Нужно удалять строки содержащие определённый номер. Причём количество номеров доходит до 1000. Например. Нужно удалить строки содержащие 1234567890129012, 1245365221453652... И это должно быть удалено из реестра приблизительно такого вида. Иванов Иван Иванович 1234567890129012 Сидоров Василий Петрович 1245365221453652 ... и т.д. Вот что нашел на просторах инета. Но это не очень помогает т.к. там помещается только до 50 номеров и приходиться делать новый макрос для следующих 50 номеров. И обязательно нужно, чтобы каждый номер был в кавычках "", а каждый номер вручную в кавычки делать то "крыша едет". Sub KillRow() Dim Myrange As Range, C As Range, DelRange As Range Dim FindRange(), Elem As Variant Dim FirstAddress As String Set Myrange = Intersect(ActiveSheet.UsedRange, Columns("C")) If Myrange Is Nothing Then Exit Sub Application.ScreenUpdating = False FindRange = Array("1234567890129012", "1245365221453652") - здесь указываю номера For Each Elem In FindRange Set C = Myrange.Find(Elem, Myrange.Cells(1), xlValues, xlPart) If Not C Is Nothing Then If DelRange Is Nothing Then Set DelRange = Rows(C.Row) FirstAddress = C.Address Do Set C = Myrange.FindNext(C) Set DelRange = Union(DelRange, Rows(C.Row)) Loop While FirstAddress <> C.Address End If Next Application.ScreenUpdating = True If DelRange Is Nothing Then Exit Sub DelRange.Delete shift:=xlUp End Sub Помогите, пожалуйста. |