Форум по VBA и MS Office

Word => Макросы в Word => Тема начата: Посетитель от 23 сентября 2022, 20:45

Название: Word VBA Макросы. Удалить с помощью макроса символ табуляции перед первым словом.
Отправлено: Посетитель от 23 сентября 2022, 20:45
Нужно удалить знак табуляции перед первым словом каждой строки и до конца всего документа, начиная с шестого абзаца.

If ActiveDocument.Paragraphs(6).Range.Characters(1).Text = Chr(9) Then
    ActiveDocument.Paragraphs(6).Range.Characters(1).Delete
End If
Название: Word VBA Макросы. Удалить с помощью макроса символ табуляции перед первым словом.
Отправлено: Администратор от 23 сентября 2022, 21:00
Можно попробовать удалить табуляцию с помощью объекта "Find". Но может быть проблема: оформление текста может измениться.
В коде указывается абзац 5; так и задумано, это не ошибка. Т.к. макрос ищет сочетание: знак абзаца + табуляция. Это означает: поиск табуляции в начале абзаца.

Макрос
Sub Макрос()
 
    Dim Rng As Range
   
    Set Rng = ActiveDocument.Paragraphs(5).Range
    Rng.End = ActiveDocument.Range.End
    With Rng.Find
        .Text = "^p^t"
        .Replacement.Text = "^p"
        .Execute Replace:=wdReplaceAll
    End With
   
End Sub
[свернуть]
Название: Word VBA Макросы. Удалить с помощью макроса символ табуляции перед первым словом.
Отправлено: Посетитель от 23 сентября 2022, 21:04
Спасибо большое, всё отлично работает.