Статьи из блога
Как определить стиль абзаца, в котором находится курсор ввода
Вопрос от Андрея:
Сейчас пишу макрос следующего содержания - необходимо поставить курсор на любой из абзацев и получить полную информацию о стиле документа. Информацию о параметрах шрифта уже выбрал, пусть и не всю, но основую. Встал банальный вопрос - как из макроса получить имя стиля абзаца на котором в данный момент находится курсор?
Получить имя текущего стиля слова, на котором находится курсор ввода, можно так:
MsgBox Selection.Style
Но можно и не использовать макрос - достаточно открыть область задач Показать форматирование («Shift+F1»), где и будет отображена вся информация о текущем стиле.
Рубрика: Вопрос-Ответ, Макросы, Стили и форматирование
Метки: макросы | позиция курсора | стили
Просмотров: 28404
Подписаться на комментарии по RSS
Версия для печати
Метки: макросы | позиция курсора | стили
Просмотров: 28404
Подписаться на комментарии по RSS
Версия для печати
Еще записи по вопросам использования Microsoft Word:
- 10 вопросов и ответов по редактору Word (1 часть)
- 3 способа очистки списка недавно открытых документов
- Word 2007: добавляем свою вкладку и свои команды
- Word 2007: полотно, рисунки, линии
- Word 2007: смена формата сохранения файла
- Word 97 - решение проблемы с отображением символов на линейке
- Word 97. Слияние документов как один из способов упростить свою работу
- Абзац с цветным фоном
- Автозаполняемые колонтитулы
- Автоматизация текстового набора в Word
- Автоматическая запись макроса
- Автоматическая нумерация билетов
- Автоматическая расстановка переносов
- Автоматическое обновление полей при открытии документа
- Автоматическое сохранение документа при его закрытии
- Автотекст с последовательной нумерацией
- Автоформат документов
- Белый текст на синем фоне в Word 2007
- Буквица
- Быстрая смена ориентации страниц документа
- Быстрое изменение стиля форматирования текста
- Быстрое перемещение между открытыми документами Word
- Быстрое создание нового документа на основе шаблона
- Быстрое удаление границ у таблицы
- Быстрый ввод текста с помощью команды =rand()
Комментариев: 9
А зачем нужна информация о стиле абзаца?
Если нужно скопировать стиль, то лучше применить копирование по образцу, даже в макросе.
Selection.CopyFormat
А затем применить скопированный стиль Selection.PasteFormat.
Наивные
А вот как определить ВСЕ стили, примененные к символу?
Ведь их может быть несколько!
Вождь, так подскажите, если знаете.
Как это сделать в Visual Basic я не нашел. Но посмотреть можно.
Например, в MS Word 2003:
Выделяем символ, к которому применено несколько стилей > Область задач (Ctrl+F1) > Раздел «Показать форматирование» > В параметрах отметить пункт «Различать источники стилей» > Изучаем «Форматирование выделенного текста»
вопрос со стороны пользователя - как к символу могут быть применены два стиля?
коллеги!
не совсем понял, что такое "все стили, примененные к символу"
к символу можно применить единовременно только один стиль, плюс - можно сделать локальное форматирование - но при этом, опять же, создастся виртуальный стиль, основанный на текущем.
Другое дело, если идет речь о том, что нужно узнать, какой стиль у абзаца, а какой - у конкретного символа в абзаце. Но и это тоже прекрасно отображается на панели "Показать форматирование"
Вот Вы пишите про макросы. Да, это здорово. Но мне и так программирования хватает...
Сделали "удобный" графический интерфейс в 2007 и 2010 офисе. Зачем функциональность-то было урезать?
В 2003 ворде было гораздо удобнее: форматирование выделенного текста отображалось в верхней части окна панели задач "Стили и форматирование". Почему нельзя было так и оставить?!
В 2007 ворде для получения якобы такого же результата нужно открыть весьма малоинформативную панель "Показать форматирование" и рядом с ней панель "Стили". Бред просто.
В 2010 не работал неужели там так же плохо...
Может кто подскажет, как заставить 2007 ворд показывать стиль выделенного фрагмента?
Короче я не доволен.
как проверить стиль страницы???