есть вот такой макрос, который удаляет по шаблону "категория2//" эту строку
[vba]
Код
Sub УдалениеСтрокПоУсловию() Dim r As Long, FirstRow As Long, LastRow As Long Dim Region As Range, iRow As Range, Cell As Range Dim Shablon1 As String Shablon1 = "*категория2//*"
[/vba]
как в макрос добавить еще один шаблон, для строки Знач/ ?
Здравствуйте! Уважаемые форумчане, помогите в макрос добавить шаблон, по которому будет удаляться ненужная строка, пример в ячейке несколько строк:
есть вот такой макрос, который удаляет по шаблону "категория2//" эту строку
[vba]
Код
Sub УдалениеСтрокПоУсловию() Dim r As Long, FirstRow As Long, LastRow As Long Dim Region As Range, iRow As Range, Cell As Range Dim Shablon1 As String Shablon1 = "*категория2//*"
[/vba]
как в макрос добавить еще один шаблон, для строки Знач/ ?pashatank
Сообщение отредактировал pashatank - Понедельник, 03.09.2018, 14:43
Пробовал создавать второй шаблон, но не выходит, вот целиком
[vba]
Код
Sub ÓäàëåíèåÑòðîêÏîÓñëîâèþ() Dim r As Long, FirstRow As Long, LastRow As Long Dim Region As Range, iRow As Range, Cell As Range Dim Shablon1 As String Shablon1 = "*категория2//*"
Set Region = ActiveSheet.UsedRange FirstRow = Region.Row LastRow = Region.Row - 1 + Region.Rows.Count For r = LastRow To FirstRow Step -1 Set iRow = Region.Rows(r - FirstRow + 1) For Each Cell In iRow.Cells If Cell Like Shablon1 Then XX = Split(Cell, Chr(10)) s = "" For n = 0 To UBound(XX)
If Not XX(n) Like Shablon1 Then s = s & XX(n) & Chr(10) End If Next If Len(s) > 0 Then s = Mid(s, 1, Len(s) - 1) End If Cell = s rr = 9 End If Next Cell Next r End Sub
[/vba]
Пробовал создавать второй шаблон, но не выходит, вот целиком
[vba]
Код
Sub ÓäàëåíèåÑòðîêÏîÓñëîâèþ() Dim r As Long, FirstRow As Long, LastRow As Long Dim Region As Range, iRow As Range, Cell As Range Dim Shablon1 As String Shablon1 = "*категория2//*"
Set Region = ActiveSheet.UsedRange FirstRow = Region.Row LastRow = Region.Row - 1 + Region.Rows.Count For r = LastRow To FirstRow Step -1 Set iRow = Region.Rows(r - FirstRow + 1) For Each Cell In iRow.Cells If Cell Like Shablon1 Then XX = Split(Cell, Chr(10)) s = "" For n = 0 To UBound(XX)
If Not XX(n) Like Shablon1 Then s = s & XX(n) & Chr(10) End If Next If Len(s) > 0 Then s = Mid(s, 1, Len(s) - 1) End If Cell = s rr = 9 End If Next Cell Next r End Sub
Проверить не на чем, но как-то так попробуйте [vba]
Код
Sub ÓäàëåíèåÑòðîêÏîÓñëîâèþ() Dim r As Long, FirstRow As Long, LastRow As Long Dim Region As Range, iRow As Range, Cell As Range Dim Shablon1 As String Shablon1 = "*категория2//*" Shablon2 = "*Знач/*" Set Region = ActiveSheet.UsedRange FirstRow = Region.Row LastRow = Region.Row - 1 + Region.Rows.Count For r = LastRow To FirstRow Step -1 Set iRow = Region.Rows(r - FirstRow + 1) For Each Cell In iRow.Cells If Cell Like Shablon1 Or Cell Like Shablon2 Then XX = Split(Cell, Chr(10)) s = "" For n = 0 To UBound(XX)
If Not XX(n) Like Shablon1 And Not XX(n) Like Shablon2 Then s = s & XX(n) & Chr(10) End If Next If Len(s) > 0 Then s = Mid(s, 1, Len(s) - 1) End If Cell = s rr = 9 End If Next Cell Next r End Sub
[/vba] Хотя не увидела удаления строк. Если Вам надо просто исключить из текста какие-то фрагменты, то проще использовать Replace. Приложите файл с примером, что есть и что надо
Проверить не на чем, но как-то так попробуйте [vba]
Код
Sub ÓäàëåíèåÑòðîêÏîÓñëîâèþ() Dim r As Long, FirstRow As Long, LastRow As Long Dim Region As Range, iRow As Range, Cell As Range Dim Shablon1 As String Shablon1 = "*категория2//*" Shablon2 = "*Знач/*" Set Region = ActiveSheet.UsedRange FirstRow = Region.Row LastRow = Region.Row - 1 + Region.Rows.Count For r = LastRow To FirstRow Step -1 Set iRow = Region.Rows(r - FirstRow + 1) For Each Cell In iRow.Cells If Cell Like Shablon1 Or Cell Like Shablon2 Then XX = Split(Cell, Chr(10)) s = "" For n = 0 To UBound(XX)
If Not XX(n) Like Shablon1 And Not XX(n) Like Shablon2 Then s = s & XX(n) & Chr(10) End If Next If Len(s) > 0 Then s = Mid(s, 1, Len(s) - 1) End If Cell = s rr = 9 End If Next Cell Next r End Sub
[/vba] Хотя не увидела удаления строк. Если Вам надо просто исключить из текста какие-то фрагменты, то проще использовать Replace. Приложите файл с примером, что есть и что надоPelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816