Ms word 2016 – как проверить, выделен ли текст или нет

Это основано на потоке Как выбрать ВСЕ УДАЛЕННЫЙ (или ВСЕ ДОБАВЛЕННЫЙ) текст (изменение дорожки) в MS Word 2016

Там пользователь endrju дал мне макрос, который выделит дополнения и удаления в слове ms 2016 в разных цветах.

Sub MarkChanges() Dim arev As Revision With ActiveDocument For Each arev In .Revisions If arev.Type = wdRevisionDelete Then arev.Range.HighlightColorIndex = wdYellow ElseIf arev.Type = wdRevisionInsert Then arev.Range.HighlightColorIndex = wdGreen End If Next arev End With End Sub 

Я сделал некоторые изменения, и он работал хорошо, тогда я заметил, что если текст уже выделен, он меняет цвет подсветки даже тогда.

Я не хотел, чтобы это произошло, поэтому я сменил макрос на t

 With ActiveDocument For Each arev In .Revisions If arev.Type = wdRevisionInsert Then If arev.Range.HighlightColorIndex = wdNoHighlight Then arev.Range.HighlightColorIndex = wdBrightGreen End If ElseIf arev.Type = wdRevisionDelete Then If arev.Range.HighlightColorIndex = wdNoHighlight Then arev.Range.HighlightColorIndex = wdTurquoise End If End If Next arev End With 

Но теперь он выделял «только» текст, который уже был выделен, и ничего не делал с текстом, который не выделялся. Он работал точно так же, как я хотел, чтобы он работал.

Я не хотел, чтобы это произошло, поэтому я сменил макрос на t

 With ActiveDocument For Each arev In .Revisions If arev.Range.HighlightColorIndex = wdNoHighlight Then If arev.Type = wdRevisionInsert Then arev.Range.HighlightColorIndex = wdBrightGreen End If ElseIf arev.Type = wdRevisionDelete Then If arev.Range.HighlightColorIndex = wdNoHighlight Then arev.Range.HighlightColorIndex = wdTurquoise End If End If Next arev End With 

Даже тогда он делал то же самое, что и раньше, то есть работал точно в обратном порядке, как я хотел.

Не должен содержать код

 If arev.Range.HighlightColorIndex = wdNoHighlight Then 

Работать только с текстом, который имеет HighlightColorIndex, установленным в wdNoHighlight, что означает, что текст не был выделен?

    Interesting Posts

    Справочник по командной строке Adobe Reader

    Как извлечь n-е слово и подсчитать вхождения в строку MySQL?

    Angular-cli от css до scss

    Является ли разница в скорости, которую я получаю от установки моего SSD в режиме RAID, незначительна?

    Что произойдет, если я определяю массив 0-размера в C / C ++?

    Лучший подход к двойной загрузке и клонированию HP Pavillion

    Как я могу суммировать значения в столбце на основе значения в другом столбце?

    Как удалить весь текст после символа в bash?

    Сортировка вектора пользовательских объектов

    Как реализовать функцию поиска на веб-сайте?

    Как исправить / обновить начальное меню в Windows 10? Как добавить / удалить / отредактировать элементы навалом?

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

    Как заставить Mac OS X переименовывать «Модификаторные ключи» для моей внешней клавиатуры?

    Вызов метода каждые x минут

    dyld: библиотека не загружена … Причина: Изображение не загружено

    Давайте будем гением компьютера.