Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 11.06.2019, 10:39   #11
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 25,396
Репутация: 5596
По умолчанию

макрос втупую перебирает все числа (в виде строк) от 0 до 20, поиск по целым словам.
плюсы - работает.
минусы - вещественные числа рассматриваются как отдельные элементы.
на большом документе, скорее всего, будет тормозить.


пример.
test_numbers.docm.zip

код макроса
Код:

Sub HighlightNumbers()

Dim range As range
Dim i As Long
Dim TargetList

TargetList = Array("0", "1", "2", "3", "4", "5", "6", "7", _
   "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20") ' put list of terms to find here

For i = 0 To UBound(TargetList)

Set range = ActiveDocument.range

With range.Find
.Text = TargetList(i)
.Format = True
.MatchCase = True
.MatchWholeWord = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False

Do While .Execute(Forward:=True) = True
range.HighlightColorIndex = wdYellow

Loop

End With
Next

End Sub

Serge_Bliznykov вне форума   Ответить с цитированием
Старый 11.06.2019, 10:45   #12
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 25,396
Репутация: 5596
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
018 попадает в промежуток?
кстати, в коде, который я привёл, в этом отношении строго
01 00 018 00005 не попадают.
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 11.06.2019, 11:07   #13
ac1-caesar
Форумчанин
 
Регистрация: 26.07.2013
Сообщений: 134
Репутация: 10
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
018 попадает в промежуток?
В принципе попадает если возможно идентифицировать как число 18.
ac1-caesar вне форума   Ответить с цитированием
Старый 11.06.2019, 11:11   #14
ac1-caesar
Форумчанин
 
Регистрация: 26.07.2013
Сообщений: 134
Репутация: 10
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
макрос втупую перебирает все числа (в виде строк) от 0 до 20, поиск по целым словам.
плюсы - работает.
Спасибо за пример, буду пробовать.
ac1-caesar вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[РЕШЕНО] Prolog: Вычислить значеник функции y=x^2+6*x-5 в промежутке от N до 2*N с шагом 2 . N - натуральное число, вводимое с клавиатуры AnnaSub Помощь студентам 2 22.05.2019 11:52
На заданном числовом промежутке требуется найти все числа, являющиеся парой близнецов ZigaBr0 Паскаль 1 29.08.2016 16:41
На заданном числовом промежутке требуется найти все квадратные числа с убывающими слева направо цифрами / Pascal ABC Veronika_13 Помощь студентам 22 04.07.2014 22:27
Pascal.Найти в промежутке от a до b число, с максимальной суммой делителей. I3ECJI0 Помощь студентам 2 16.05.2012 15:39


23:40.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru