Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Циклический поиск с заменой / 3 сообщений из 3, страница 1 из 1
16.02.2007, 11:50:16
    #34335970
KreZ0n
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Циклический поиск с заменой
Нужно сделать поиск/замену с использование верхнего и нижнего индесов. Ищется обычное слова и меняется на слово, которое содержит верхние и нижние индексы. Обычная замена не подходит. Написал следующий код

With Selection.Find
.ClearFormatting
.MatchWholeWord = True
.MatchCase = False
.Execute FindText:="k2в"
.Replacement.ParagraphFormat
.Wrap = wdFindContinue
Selection.TypeText Text:="k"
Selection.Font.Subscript = wdToggle
Selection.TypeText Text:="2"
Selection.Font.Superscript = wdToggle
Selection.Font.Superscript = wdToggle
Selection.TypeText Text:="в"
End With

но меняется первое вхождение. как сделать чтобы изменились все совпадения?
...
Рейтинг: 0 / 0
16.02.2007, 15:23:28
    #34336840
lena_####
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Циклический поиск с заменой
KreZ0n

Попробуйте такой вариант:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Sub s()
  Dim v_Rng As Range
  Set v_Rng = ActiveDocument.Range
  
  Do While v_Rng.Find.Execute("k2в")
    v_Rng.Characters( 2 ).Font.Subscript = True
    v_Rng.Characters( 3 ).Font.Superscript = True
  Loop
End Sub
...
Рейтинг: 0 / 0
16.02.2007, 15:47:28
    #34336952
KreZ0n
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Циклический поиск с заменой
Большое спасибо. Работает так как я ожидал
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Циклический поиск с заменой / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]