![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 19.10.2015
Сообщений: 2
|
![]()
Добрый день. Есть следующая проблема. В документе есть маркированный список, в каждом абзаце списка нужно выделить жирным определенную часть документа. Либо это тест до запятой. Либо, если запятой нет, то выделить нужно все первое предложение.
Я написала макрос для выделения первого предложения Sub BoldSentence() Dim Абзац As Word.Paragraph For Each Абзац In ActiveDocument.Paragraphs If Абзац.Range.ListFormat.ListType = _ WdListType.wdListBullet Then Абзац.Range.Sentences(1).Bold = True End If Next Абзац End Sub И нашла макрос, который выделяет текст до запятой http://www.homepc.ru/2002/68/16182/ Но я не могу понять как их совместить) Никто мне не поможет? Последний раз редактировалось AbyAby; 19.10.2015 в 11:40. |
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 19.10.2015
Сообщений: 2
|
![]()
Я написала макрос следующим образом.
Dim Абзац As Word.Paragraph For Each Абзац In ActiveDocument.Paragraphs If Абзац.Range.ListFormat.ListType = _ WdListType.wdListBullet Then Абзац.Range.Sentences(1).Bold = True End If If Абзац.Range.ListFormat.ListType = _ WdListType.wdListBullet Then Selection.Find.ClearFormatting With Selection.Find .Text = "\, *\. " .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .Font.Bold = True .MatchCase = False .MatchWholeWord = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = True End With Selection.Find.Execute Selection.Font.Bold = wdToggle End If Next Абзац Проблема в следующем. В первом предложении часто встречается фамилия с инициалами. Встречается и середине и в начале и в конце. Например, Сегодня идет дождь, как отметил А.В. Иванов. Он будет идти и завтра. Макрос выделяет в жирным первое предложение до слова Иванов. Потом снимает выделение между запятой и точкой. И оставляет выделенным В.Иванов, что логично, потому что такое условие задано) Как это исправить? Таких сообщений процентов 15-20 от всего массива, не критично, можно поправить при проверке, но хотелось бы прям красиво сделать) |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Макрос для выделения кириллицы в Word | inspirer161 | Microsoft Office Word | 12 | 15.02.2015 19:46 |
Макрос для поиска и выделения слов | Angry_Kitty | Microsoft Office Word | 11 | 07.10.2014 22:01 |
Цвет выделения текста RichEdit | Kib | Общие вопросы Delphi | 6 | 14.02.2013 10:20 |
команда выделения текста | Gunet | Общие вопросы Delphi | 3 | 19.11.2009 18:53 |