Вопрос на засыпку. А как добавить дополнительное слово для удаления If arr1(i, 2).Value Like "Перспективные работы*" Then и If arr1(i, 2).Value Like "Текущие работы*" Then
Вопрос на засыпку. А как добавить дополнительное слово для удаления If arr1(i, 2).Value Like "Перспективные работы*" Then и If arr1(i, 2).Value Like "Текущие работы*" ThenQwertyBoss
Сообщение отредактировал QwertyBoss - Четверг, 03.12.2015, 11:31
Куда-то вопрос пропал. Пишу снова. Вопрос на засыпку: а как добавить дополнительное слово к условию? If c.Value Like "Перспективные работы*" Then и If c.Value Like "Текущие работы*" Then
Можно конечно поменять названия переменных и каждое сделать по отдельности, но и мак увеличиться в 2 раза, а перебором чё т не могу докумекать.... =(
Куда-то вопрос пропал. Пишу снова. Вопрос на засыпку: а как добавить дополнительное слово к условию? If c.Value Like "Перспективные работы*" Then и If c.Value Like "Текущие работы*" Then
Можно конечно поменять названия переменных и каждое сделать по отдельности, но и мак увеличиться в 2 раза, а перебором чё т не могу докумекать.... =(QwertyBoss
Мой код рассчитан только на контроль одной переменной. Как вариант - добавить еще один макрос, который будет запускать этот с нужными переменными например так [vba]
Код
Sub main() For Each i In Array("Перспективные работы*", "Текущие работы*") Run "d", i, 2 Next End Sub
Sub d(s$, n%) Dim c As Range, cF As Range, b As Boolean For Each c In Range("A1").CurrentRegion.Rows If Cells(c.Row, n).Value Like s Then If Not b Then b = True Else If cF Is Nothing Then Set cF = c Else Set cF = Union(c, cF) End If Next cF.EntireRow.Delete End Sub
[/vba] ЗЫ еще добавил просмотр только во втором столбце.
Мой код рассчитан только на контроль одной переменной. Как вариант - добавить еще один макрос, который будет запускать этот с нужными переменными например так [vba]
Код
Sub main() For Each i In Array("Перспективные работы*", "Текущие работы*") Run "d", i, 2 Next End Sub
Sub d(s$, n%) Dim c As Range, cF As Range, b As Boolean For Each c In Range("A1").CurrentRegion.Rows If Cells(c.Row, n).Value Like s Then If Not b Then b = True Else If cF Is Nothing Then Set cF = c Else Set cF = Union(c, cF) End If Next cF.EntireRow.Delete End Sub
[/vba] ЗЫ еще добавил просмотр только во втором столбце.SLAVICK