| | #1 | |
| diletant2 Форумчанин Регистрация: 02.05.2011
Сообщений: 102 Репутация: 3 (1) |
столкнулся с проблемой: если в тексте ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ выделить несвязанные области (выделено жирным) и через меню выбрать Цвет выделения текста =Текст будет выглядеть так, как если бы он был закрашен фломастером, то все выделенное закрасится: ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ (выделено красным, сорри, не знаю как здесь выделить цветом...), а вот если записать макрос (например, выделение желтым цветом): Options.DefaultHighlightColorIndex = wdYellow Selection.Range.HighlightColorIndex = wdYellow и потом применить его к таким же образом выделенному тексту (несвязанное выделение), то получим закраску только последнего выделенного фрагмента, при этом другие фрагменты - останутся нетронутыми: ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ ФЫВАПРОЛДЖЭЯ (подчеркнуто)! как же получить код, делающий закраску, как через меню? | |
| | ||
| Другие темы раздела | Форум программистов VBA. Программирование на Visual Basic for Applications. Помощь в решении задач. |
| ИЗМЕНЕНИЕ ФОРМУЛЫ ЧЕРЕЗ VBA Приветствую ВСЕХ!!! :D Столкнулся с такой проблемой. Необходимо в формуле округление до 2-х знаков изменить на округление до 4-х знаков. (в EXCEL через VBA). Пытался это сделать через текстовые функции (заменить, подставить). Но из всех функций корректно сработала только одна - которая определяет.... ИЗМЕНЕНИЕ ФОРМУЛЫ ЧЕРЕЗ VBA | VBA VBA: Завершить показ слайдов в MS PowerPoint Доброго времени суток. Не подскажите как будет выглядеть команда завершения показа слайдов на VBA ?. VBA: Завершить показ слайдов в MS PowerPoint |
| | #2 | ||||||
| Вождь Форумчанин Регистрация: 18.02.2010
Сообщений: 70 Репутация: 72 (35) |
Когда выбрано несколько фрагментов, полезны встроенные команды MS Word, которые работают аналогично командам меню. В данном случае подойдет команда Highlight. Делаем так:
| ||||||
| | |||||||
| | #3 | |
| diletant2 Форумчанин Регистрация: 02.05.2011
Сообщений: 102 Репутация: 3 (1) |
спасибо, работает! вдогонку, если можно, еще одна проблема: если выделить не связанные между собой фрагменты текста и закрасить фон таким кодом Selection.Shading.BackgroundPatternColor = wdColorLightTurquoise то попытка удалить сразу все такие раскраски с помощью кода Selection.Shading.BackgroundPatternColor = wdColorAutomatic ни к чему не приводит, если фрагменты принадлежат к разным абзацам (правда, если выделить мышкой только эти фрагменты текста с раскрашенным фоном без захвата знаков абзаца, то тогда получится), но это неудобно вручную выделять все эти фрагменты текста, особенно на больших текстах (например, после сканирования и распознавания, когда возможные ошибки подкрашиваются именно фоном), проще выделить все Ctrl+A и применить макрос, но какой? | |
| | ||
| | #4 | ||||||
| Вождь Форумчанин Регистрация: 18.02.2010
Сообщений: 70 Репутация: 72 (35) |
Надо различать заливку абзаца (Paragraph.Shading) и текста (Font.Shading). При Selection.Shading автоматически обрабатывается что-то одно. Поэтому лучше указывать конкретно, что закрашивать. В вашем случае надо очищать сразу все:
| ||||||
| | |||||||
| | #5 | |
| diletant2 Форумчанин Регистрация: 02.05.2011
Сообщений: 102 Репутация: 3 (1) |
спасибо, все работает! но вот еще проблема: если в документе залить фон цветом в области, включающей несколько абзацев, таблицу и еще несколько абзацев после нее, то заливка таблицы будет не сплошной, а с белыми полосками по краям каждой ячейки. если потом выделить только таблицу, скопировать ее в другой документ, снова выделить только таблицу - то удалить цвет фона даже через меню не получается, что делать? конечно, если выделить не только таблицу, а захватить еще несколько абзацев выше или ниже ее, то цвет фона уберется, но как быть, если нужно сохранить цвет фона всего документа, а от цвета фона только таблицы избавиться? Последний раз редактировалось diletant2; 03.05.2011 в 14:22. Причина: P.S. | |
| | ||
| | #6 | |
| Вождь Форумчанин Регистрация: 18.02.2010
Сообщений: 70 Репутация: 72 (35) |
Как я уже писал, при изменении заливки кнопкой "Заливка", Ворд выбирает что-то одно (текст, абзац, таблица и др.), в зависимости от того, что выбрано. Но в окне "Границы и заливка" можно указать все детально, в т.ч. и объект с которым работаем. Окно "Границы и заливка" есть во всех версиях Ворд.
| |
| | ||
| | #7 | |
| diletant2 Форумчанин Регистрация: 02.05.2011
Сообщений: 102 Репутация: 3 (1) |
увы, через "Границы и заливку" тоже не пашет для таблицы ![]() и само действие желательно повесить на хоткей Добавлено через 18 минут P.S. кстати, при заливке через "Границы и заливка" - окрашивает/обесцвечивает только эти белые полоски по краям ячейки... | |
| | ||
| | #8 | |
| Вождь Форумчанин Регистрация: 18.02.2010
Сообщений: 70 Репутация: 72 (35) | | |
| | ||
| | #9 | |
| diletant2 Форумчанин Регистрация: 02.05.2011
Сообщений: 102 Репутация: 3 (1) | | |
| | ||
| | #10 | ||||||
| Вождь Форумчанин Регистрация: 18.02.2010
Сообщений: 70 Репутация: 72 (35) |
Можно в окне "Границы и заливка" указать применить к "абзацу", можно и кодом:
| ||||||
| | |||||||
![]() |
| Похожие темы | |
| Тема | Автор |
| MS Access Выделение текста цветом при определенных условиях Доброго времени суток! В форме имеется Список с двумя столбцами: Номер_блока и Дата_проверки. Как сделать так, чтобы в случае, если Дата_проверки была бы просрочена, то текст Списка становился бы красного цвета? Пробовал сделать примерно так: If me.Список.Column(1) > Date then... | russianrailways |
| C# .NET Выделение синтаксиса цветом Всем привет) Пишу программу редактирования кода. И столкнулся с проблемой выделения синтаксиса, например в C# "if" выделяется синим, в С++ #define - зелёным и т.д и т.п. Как это сделать? Помогите пож!) | Nikit@ |
| Delphi выделение цветом части текста ячейки Excel Доброго времени суток Усем!!! :) Есть выгрузка в Excel при которой в зависимости от значения аоля из базы раскрашиваются выгружанные данные: типа KursName - KursStat Let - "Понижен" итд. При выгрузке может быть несколько курсов , они раздеряются... | iolko |
| VBA Выделение цветом текста в ячейке Есть таблица в Excel, в каждой ячейке содержится название и описание какой-либо операции. Необходимо найти ключевые слова в ячейке и выделить их красным цветом, именно одно слово в ячейке с текстом, а не всю ячейку. Никак не получается это сделать... Пример: В ячеке содержится текст... | Lara |
| C# Windows Forms Выделение текста разным цветом в RichTextBox Написал функцию, входными параметрами которой является строка, которая должна быть добавлена в RichTextBox и булевый параметр, от которого зависит, в красный или синий цвет будет окрашиваться текст, функция выглядт так: public void addRes(string _res, bool positive) { ... | Pesick |
| Опции темы | Поиск в этой теме |
| | |
| Опции просмотра | |
| |
| Текущее время: 07:21. Часовой пояс GMT +4. |