Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ворд выделение всего найденного сразу / 15 сообщений из 15, страница 1 из 1
23.07.2017, 07:48
    #39493455
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
здравствуйте мне кажется у меня этот отрезок кода:

Код: vbnet
1.
2.
3.
4.
5.
6.
With ActiveDocument.Range.Find
                    .Text = Trim(y(1))
                    Do While .Execute = True
                        .Parent.Select
                        Selection.Range.Font.Color = wdColorLightOrange
                    Loop               End With


можно заменить на такой, который сразу выделает все найденные совпадения, пока не знаю как... не подскажете? спс

просто если магнитофоном записать то получим:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
With Selection.Find
        .Text = "при"
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With


потом если пошагово делать этот код, то .... фиаско
...
Рейтинг: 0 / 0
26.07.2017, 15:31
    #39495370
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
катастрофа,

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Option Explicit

Sub HighLightAll()

Dim wd As Word.Document
Dim rn As Range

Set wd = ThisDocument
Set rn = wd.Range

With rn.Find
    .Replacement.Highlight = True
    .Text = "lorem"
    .MatchWholeWord = True
    .Execute Replace:=wdReplaceAll
End With

End Sub
...
Рейтинг: 0 / 0
27.07.2017, 07:55
    #39495699
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
iMrTidy, здравствуйте, опробовал Ваш код, ничего не выделяет, следовательно строку
Код: vbnet
1.
Selection.Range.Font.Color = wdColorLightOrange


выполнять безсмысленно
...
Рейтинг: 0 / 0
27.07.2017, 09:10
    #39495729
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
катастрофаiMrTidy, здравствуйте, опробовал Ваш код, ничего не выделяет, следовательно строку
Код: vbnet
1.
Selection.Range.Font.Color = wdColorLightOrange


выполнять безсмысленно

Давайте пример файла, будем разбираться.
...
Рейтинг: 0 / 0
27.07.2017, 11:00
    #39495812
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
iMrTidy,
пожалуйста
...
Рейтинг: 0 / 0
27.07.2017, 11:34
    #39495855
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
катастрофаiMrTidy,
пожалуйста

Если Вам нужно выделение по части слова, то нужно соответственно изменить параметр поиска.

Код: vbnet
1.
.MatchWholeWord = False
...
Рейтинг: 0 / 0
27.07.2017, 12:01
    #39495891
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
iMrTidy, респект, только в упор не пойму где та строка, которая делает нужное выделение цветом зелёным и как будет если нужно жёлтым или просто шрифт красным цветом? спасибо
...
Рейтинг: 0 / 0
27.07.2017, 14:08
    #39496018
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
катастрофаiMrTidy, респект, только в упор не пойму где та строка, которая делает нужное выделение цветом зелёным и как будет если нужно жёлтым или просто шрифт красным цветом? спасибо

Возможно, у Вас мелкий шрифт, вот эта строчка:
Код: vbnet
1.
.Replacement.Highlight = True



Чтобы изменить цвет, можно, например, поменять стандартный цвет подсветки:

Код: vbnet
1.
Options.DefaultHighlightColorIndex = wdBrightGreen
...
Рейтинг: 0 / 0
29.07.2017, 06:55
    #39496958
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
iMrTidy, понял, спасибо
...
Рейтинг: 0 / 0
19.10.2017, 09:10
    #39538501
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
здравствуйте, на этот топик зашел после напоминания в другой теме, сорри
iMrTidy, респект, только в упор не пойму где та строка, которая делает нужное выделение цветом зелёным и как будет если нужно жёлтым или просто шрифт красным цветом ?
iMrTidy, с подчёркнутым не подскажите?
...
Рейтинг: 0 / 0
19.10.2017, 11:23
    #39538567
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
катастрофа,

Для начала перечитайте внимательно топик, а потом уж вопросы, если будут.
...
Рейтинг: 0 / 0
20.10.2017, 06:23
    #39539291
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
сделал:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
'
Sub Выделение_цветом_желтый()
'
    Options.DefaultHighlightColorIndex = wdYellow
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    Selection.Find.Replacement.Highlight = True
    With Selection.Find
        'эта опция отвечает за поиск с использованием подстановочных знаков
        'не работает когда установлено в положение False, или её нет вообще
        'если установлена в положение True, тогда работает
        .MatchWildcards = True
        'ищем
        .Text = "наказыва?тся*."
        .Replacement.Text = ""
        'свойство Wrap (Поворачивать, Заворачивать) определяет поведение поиска при достижении конца документа, wdFindContinue (ПоискПродолжать)
        .Wrap = wdFindContinue
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
End Sub
'
Sub Цвет_текста_лиловый()
'
'цвет текста - лиловый
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    Selection.Find.Replacement.Font.ColorIndex = wdPink
    With Selection.Find
        'эта опция отвечает за поиск с использованием подстановочных знаков
        'не работает когда установлено в положение False, или её нет вообще
        'если установлена в положение True, тогда работает
        .MatchWildcards = True
        'ищем
        .Text = "наказыва?тся*."
        .Replacement.Text = ""
        'свойство Wrap (Поворачивать, Заворачивать) определяет поведение поиска при достижении конца документа, wdFindContinue (ПоискПродолжать)
        .Wrap = wdFindContinue
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
End Sub
...
Рейтинг: 0 / 0
20.10.2017, 10:13
    #39539353
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
катастрофа,

Вы что фанат WET программирования?
...
Рейтинг: 0 / 0
20.10.2017, 10:23
    #39539358
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
iMrTidyВы что фанат WET программирования?Именно так. Когда ему понадобится покрасить в красный, а не в желтый, он сделает копию этой функции, заменит название и код цвета. Не удивляйся, прими как данность.
У Эндрю есть специальный блокнотик - он сам рассказывал когда-то. Он туда копипастит код, который дают ему на форумах. Как код работает, он разобраться не пытается.
...
Рейтинг: 0 / 0
20.10.2017, 11:16
    #39539415
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ворд выделение всего найденного сразу
Shocker.Pro,

Хорошо, что количество индексов цветов небольшое, со словами поиска/выделения будет другая история. А вообще, это забавляет.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ворд выделение всего найденного сразу / 15 сообщений из 15, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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