"Макросы в Word: общие понятия.". Макросы в ворде 2018 примеры


Использование макросов в Microsoft Office

Вы работаете в приложениях пакета Microsoft Office и периодически выполняете повторяющиеся задачи? Любая последовательность команд может быть автоматизирована и сведена к выбору пункта меню или нажатию комбинации клавиш. Для этого используются макросы, которые в точности повторяют цепочку ваших действий и тем самым экономят время. Макросы создаются на языке программирования VBA, но совсем не обязательно быть программистом, чтобы написать собственный макрос. Как это делается в приложениях MS Word и Excel, мы и рассмотрим в данной статье.

Концепция макросов

Рис. 1. Главное окно библиотеки

Макрос – макропрограмма, последовательный набор команд, которые можно выполнять, нажав одну кнопку или комбинацию клавиш. Их применение существенно экономит время пользователя и избавляет его от необходимости выполнения рутинных операций.

Цель макросов – автоматизировать повторяющиеся действия и расширить функциональные возможности приложения. С помощью макропрограмм создаются крупные модули, включающие в себя дополнительные команды, надстройки и т. д. Пользователи сами имеют возможность создавать макросы, исходя из своих потребностей и характера выполняемых задач. Однажды написанный макрос может быть многократно использован.

Технология макросов поддерживается большинством профессиональных программных продуктов, среди которых: AutoCAD, Adobe Photoshop, 3D Studio Max, Microsoft Office и др.

Поддержка макросов в Microsoft Office

MS Office предлагает два способа создания макропрограмм: непосредственно ввод ее текста (процедуры VBA) в редакторе VBA либо применение встроенного средства записи. Первый вариант рассчитан на опытных пользователей, программистов или интеграторов и позволяет создавать полнофункциональные надстройки, функции и модули. Второй, напротив, необычайно прост и предназначен для новичков, не требует знания принципов программирования и синтаксиса команд VBA.

Рис. 2. Создание фотогалереи для Web-сайта

Автоматическое создание макросов осуществляется, подобно записи на обычный магнитофон, только вместо звука фиксируются нажатия клавиш и действия мыши. Последовательность следующая: включить запись, произвести все операции, которые должен будет выполнять макрос, и остановить запись. Предварительно макропрограмме необходимо дать уникальное имя, описание (необязательно) и указать параметры сохранения – они несколько отличаются в различных приложениях MS Office, но в общем случае их два: сохранение макроса в текущем документе (в других он будет недоступен) либо в собственной библиотеке макросов или шаблоне (станет доступен для всех файлов в этом приложении). Библиотека макросов может быть перенесена на другой компьютер и подключена к соответствующему приложению MS Office, а макропрограмма, сохраненная в файле, копируется и переносится вместе с ним.

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

При записи автоматически генерируется текст макропрограммы – процедура VBA. Желающим научиться самостоятельно создавать более мощные и гибкие макросы непосредственно в редакторе будет очень полезно изучить последовательность сгенерированных команд VBA. Для этого нужно нажать сочетание Alt+F8, выбрать из списка соответствующий макрос и нажать кнопку Изменить.

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

Макросы для Microsoft Word

В MS Word макросы можно использовать для форматирования объектов (таблиц, рисунков и т. д.), указания различных настроек для вывода текущего документа на печать, преобразования документов, созданных в других текстовых редакторах, выполнения различных действий с выделенными данными и прочих операций.

Рассмотрим простой пример. Его оценят многие пользователи, хотя бы раз работавшие с текстами в Word. Часто случайно при наборе или после сканирования и распознавания в тексте появляются лишние пробелы между словами. Даже в малом фрагменте их удаление вручную займет много времени. С помощью диалогового окна поиска и замены это можно выполнить в 6–7 кликов мышью и вводом небольшого текста. Созданный макрос способен заменить все совпадения двух и более стоящих подряд пробелов одним нажатием сочетания клавиш.

Последовательность действий в этом случае следующая:

  1. В MS Word 2007 перейдите на вкладку Вид, найдите меню Макросы, нажмите в нем раскрывающееся меню Макросы, после чего выберите команду Запись макроса, как показано на рис. 1. Для MS Word 2003: Сервис -> Макрос -> Начать запись…
  2. В появившемся диалоговом окне Запись макроса введите имя создаваемой макропрограммы. Оно должно быть уникальным, отражать смысл макроса и не содержать пробелов. Назовем наш макрос ЛишниеПробелы. В графе Макрос доступен для выберите место сохранения – для всех документов либо только для текущего. Выбираем первый вариант. Далее в графе Описание вкратце укажите, для чего предназначен макрос.
  3. После этого в том же диалоговом окне нажмите одну из кнопок Назначить макрос кнопке (панели для версии 2003) или Назначить макрос клавишам. При выборе первого варианта откроется окошко, из которого в MS Word 2003 название данного макроса можно перетащить на панель инструментов или на любое меню (сделать его пунктом этого меню), а работая в Word 2007, нажав кнопку Добавить, можно поместить вызов макропрограммы в панель быстрого доступа. Если же вы предпочитаете запускать макрос сочетанием клавиш, выберите второй вариант, укажите желаемую комбинацию и нажмите OK. Назначим нашему макросу сочетание клавиш Ctrl+Alt+Пробел.
  4. Запись начата. Теперь вызываем диалог Найти и заменить. Для этого на вкладке Главная в меню Редактирование нажимаем кнопку Заменить. Для 2003 версии: Правка -> Заменить…
  5. В окне Найти и заменить в поле Найти пишем: «{2;}». Эта запись означает – искать 2 или более пробелов подряд. А в графе Заменить на ставим один пробел. После этого нажимаем на кнопку Больше для указания особых параметров поиска. Укажите Направление – везде и снимите галочки со всех опций, кроме Подстановочные знаки. Если эта опция не была установлена, выберите ее. Параметры замены должны быть указаны, как на рис. 2, затем нажмите кнопку Заменить все.
  6. После того как будет выдано сообщение о результатах замены, нужно остановить запись макропрограммы. Для этого нажмите на кнопку Остановить запись (значок- квадратик), которая находится в строке состояния, если вы работаете в Word 2007, и Сервис -> Макрос -> Остановить запись для Word 2003.

Макрос записан. Теперь по нажатии комбинации клавиш Сtrl+Alt+Пробел из текущего документа будут автоматически удаляться лишние пробелы.

Макросы для Microsoft Excel

В MS Excel макропрограммы могут быть использованы для создания и печати отчетов, применения специального форматирования к выбранным диапазонам ячеек, импортирования данных, автоматического построения диаграмм, написания собственных программ табличных вычислений и др.

В MS Excel запись, сохранение и быстрый запуск созданных макросов осуществляется подобно тому, как это делается в Word. Рассмотрим несколько примеров, с которыми встречаются пользователи Excel.

Иногда при вводе длинного заголовка таблицы, изменении и пересчете значений и подобных операциях некоторые данные перестают помещаться в ячейках. Вследствие этого в зависимости от версии и текущих настроек Excel текст будет перекрывать соседние ячейки или «прятаться» под ними, если же вводятся числовые данные – вместо цифр вы можете увидеть набор символов #####. Хотя недолго и вручную настроить автоподбор ширины, в случае периодического повторения ситуации лучше создать соответствующий макрос для автоматического выполнения данных действий. Для этого необходимо:

  1. Создать новую книгу или открыть существующую. Описанным выше способом задайте имя, сохранение в личной книге макросов (не только для текущей книги), комбинацию клавиш (по желанию) и начните запись макроса.
  2. Нажмите сочетание клавиш Ctrl+Ф для выделения всех ячеек листа. На закладке Главная в меню Ячейки нажмите кнопку Формат и в меню выберите команду Автоподбор ширины столбца (если вы работаете в 2007 версии MS Office) либо выполните команду Формат -> Столбец -> Автоподбор ширины (для MS Excel 2003). Поставьте курсор снова в ячейку А1 для снятия выделения.
  3. Остановите запись (идентично остановке записи макроса в Word).

Часть пользователей применяют автоформат для быстрого создания таблиц. Наверняка у каждого из них есть свои, наиболее часто используемые стандартные или созданные стили автоформата. Если их несколько, запишите для каждого макрос, назначьте сочетания клавиш или задайте кнопки в панели быстрого запуска. Теперь создание, разметка и применение стилей к таблице будут сведены к выделению нужного диапазона ячеек и вызову соответствующего макроса. Данный пример актуален и для применения автоформата к таблицам в Word.

Многие пользователи выводят на печать не весь документ целиком, а только необходимый фрагмент. Сделайте для этого макропрограмму. Выделите фрагмент, начните запись макроса, проделайте необходимые операции вручную и остановите запись. Впоследствии вам нужно будет только выделить фрагмент и запустить соответствующий макрос (его можно создать как в Word, так и в Excel).

P.S.

Если вы заметили, что в используемом приложении MS Office периодически выполняете одну и ту же последовательность операций, приступайте к написанию макроса. Этим вы сэкономите свое время, не будете отвлекаться на рутинные операции и сосредоточите внимание на более важных задачах.

Ввиду обширности темы макросов в рамках данной статьи невозможно рассмотреть все нюансы их создания и использования. Читателям, заинтересовавшимся применением макропрограмм, рекомендую изучить справку того приложения, работу в котором они хотят автоматизировать. Будут полезны также литература и справочники из Интернета.

Макросы и безопасность

Несколько советов пользователям, применяющим макросы:

  1. Настройте свою антивирусную программу на фоновую проверку документов MS Office, содержащих макросы (во многих антивирусах установлено по умолчанию).
  2. Выбирайте опцию Отключить макросы при открытии документов с макросами, загруженных из Интернета или полученных из сомнительных источников.
  3. Без особой необходимости не изменяйте настройки по умолчанию, касающиеся макросов и безопасности, в приложениях MS Office.

Установка рекомендуемых настроек для Word или Excel 2007: кнопка Office -> Параметры Word Excel -> Центр управления безопасностью -> Параметры центра управления безопасностью -> Параметры макросов, выберите опцию Отключить все макросы с уведомлением. Для пользователей предыдущей версии: Сервис -> Параметры -> Безопасность -> Защита от макросов выберите степень защиты Средняя или Высокая.

Ссылки по теме

office.microsoft.com/ru-ru/help/HA012317941049.aspx – статья, посвященная основам создания макропрограмм для всех приложений Microsoft Office.

 

office.microsoft.com/ru-ru/word/HA100997691049.aspx – рассмотрение общих вопросов записи макросов в Microsoft Word 2007.

 

office.microsoft.com/ru-ru/excel/HP100141111049.aspx – запись макросов в Excel 2007, создание макропрограмм непосредственно в редакторе VBA.

 

office.microsoft.com/ru-ru/excel/HA100310711049.aspx – безопасное использование макросов в разных приложениях MS Office 2007.

 

www.philol.msu.ru/~yegorov/macro/index.php – полезные макросы для Microsoft Word.

 

www.firststeps.ru/vba/excel/vbaexcel1.html – документация по созданию мощных процедур для MS Excel на языке VBA с примерами.

 

itc.ua

Занятие 1. Начало работы. Проектирование и запись макроса Word

Занятие 1. Начало работы. Проектирование и запись макроса Word

Первое занятие будет посвящено введению в макросы. Вы сможете спроектировать и записать макрос MS Word, узнав при этом подробности работы со стилями документа.

Подготовка к работе

Начнем обучение с определения понятия макрос.

Первый термин.

Макрос есть средство автоматизации работы в приложениях MS Office.

Используя макросы, вы можете в значительной мере упростить и ускорить свою работу в приложениях MS Office за счет «поручения» макросам рутинной работы. Создавать макрос имеет смысл тогда, когда вам приходится часто и много повторять какую-то (но всегда одну и ту же) последовательность действий по изменению документа, и вы ловите себя на мысли, что бездумно повторяете одни и те же щелчки мышью и нажатия на клавиши – без уделения внимания творчеству.

Постановка задачи

Любая творческая деятельность должна начинаться с создания представления о том, что же, собственно, требуется сделать.

Запись, содержащая описание представления о том, что требуется от приложения, так и называется – требования.

Итак, составим требования к будущему приложению.

Цель работы – создать макрос Word, который будет автоматически преобразовывать слова и фразы определенного стиля в сноски.

Создание стендового документа

Первым шагом работы будет создание «стендового» документа, который мы будем использовать при написании и отладке макроса.

Для этого сделайте следующее:

  • Запустите Word.
  • Наберите сами или скопируйте откуда-нибудь любой текст.

Пусть, для простоты, в нем не будет ни картинок, ни таблиц, никаких других сложных элементов.

Например, так:

Только не открывайте уже существующий документ! Мы будет создавать макрос «с нуля», кроме того, это упростит работу.

Теперь несколько участков надо определить как имеющие стиль примечание.

Если вы забыли, как это делается, кратко напомним.

Сначала надо создать стиль примечание (в предопределенном наборе Word этого стиля нет), относящийся к символам текста, а не к абзацам – ведь мы будем преобразовывать в сноски слова, а не абзацы. Если же вы пожелаете создавать примечания именно из абзацев, то сможете самостоятельно записать макрос, используя знания, полученные при обучении.

Для создания нового стиля:

Поместите курсор в тексте, который будет иметь новый стиль. В нашем «стендовом» тексте подразумевается фраза «примечание…».

  • Сделайте это:
  • Поместите курсор (щелкните один раз мышкой) на слове «примечание» в созданном вами тексте.
  • Выполните команду меню ФорматСтиль…

В результате выполнения команды меню появится окно:

Как видите, в этом окне и происходит работа со стилями.

  • Щелкните кнопку Создать…

Появится окно создания стиля:

  • В поле Имя:, вместо имени Стиль1 (на рисунке эта надпись выделена) введите примечание.
  • Рядом, в падающем списке Стиль выберите значение Знака:

Для наглядности изменим внешний вид нового стиля.

  • Щелкните кнопку Формат.
  • В появившемся меню выберите пункт Шрифт.

Появится окно настройки шрифтов.

  • В списке Начертание выберите пункт Полужирный:

Окно настройки шрифтов исчезнет.

Вы вернетесь в окно создания стилей.

  • Щелкните Применить.

Теперь вы можете оформить текст.

  • Переместите курсор (одиночным щелчком мыши) в начало будущей сноски:

Для выделения текста быстрее и проще (особенно тем, кто не вполне уверенно владеет мышью) использовать клавиши.

  • Дважды нажмите [Ctrl]+[Shift]+[].

Это сочетание приводит к выделению слова (или пробела) слева от курсора.

Текст должен приобрести такой вид:

Теперь примените созданный стиль к выделенному тексту.

  • Для этого на панели инструментов Word найдите падающий список, содержащий все доступные в данном документе стили:

  • И в этом списке выберите пункт с названием нового стиля.

Дополнительные сведения о стилях вы найдете в справочной системе Word.

Обзор справочной системы

Для начинающих дадим краткий обзор использования справочной системы приложений MS Office.

Для вызова справки:

  • Выполните команду меню СправкаСправка по Microsoft Word (в Word 97 – ?Справка по Microsoft Word) или нажмите [F1].

Появится окно справки Word.

  • Выберите вкладку Мастер ответов
  • В поле Выберите действие: введите слово стиль.
  • Нажмите [Enter]

Появится список разделов справки, так или иначе относящихся к макросам (слева внизу):

Как видите, здесь есть пункты Создание нового стиля и другие, которые могут вам помочь.

Помните, что, кроме одиночного слова, вы можете использовать фразы как параметр поиска.

  • Например, попробуйте произвести поиск по фразе Создать стиль.

Как видите, список результатов изменился.

В Word 97 ваши действия будут немного другими:

  • В окне справки, вызванном нажатием [F1], выберите вкладку Предметный указатель.
  • Начните вводить слово стиль в верхнее поле вкладки:

Как видите, по мере ввода слова-запроса происходит перемещение по списку разделов справки. Выбором раздела в нижнем списке (двойным щелчком) вы откроете окно с текстом справки, где, возможно, получите недостающую информацию.

Назначение стиля участкам текста

Продолжим работу с новым документом.

  • Назначьте вновь созданный стиль примечание всем оставшимся участкам, которые впоследствии будут преобразованы.
  • Сохраните созданный документ (команда ФайлСохранить).

Присвойте документу имя, по которому вы легко поймете предназначение документа, например: макрос_word_1. При сохранении позаботьтесь, чтобы документ был размещен в месте, где вы его легко найдете. Рекомендуется создать специальную папку, в которой вы будете хранить файлы, создаваемые в процессе обучения.

«Стендовый» документ создан.

Проектирование макроса

Программы MS Office обладают очень полезной возможностью автоматически создавать макросы. При этом происходит запись последовательности выполнения команд этой программы MS Office и нажатий на клавиши. Движения мыши не записываются (за исключением случаев, когда действия мыши приводят к выполнению какой-либо команды программы MS Office).

Для записи макроса сначала следует определить (спроектировать) последовательность действий, которую вы хотите записать.

Последовательность действий для преобразования абзаца определенного стиля в макрос, очевидно, будет выглядеть так:

  • найти текст со стилем примечание и выделить его
  • вырезать найденный текст в буфер обмена.

Буфер обмена– специальное средство операционной системы Windows, служащее для обмена данными между разными программами.

  • создать в месте расположения курсора сноску
  • вставить вырезанный ранее текст из буфера обмена в сноску

Эту последовательность можно изобразить наглядно, в виде схемы – так и называемой: схема последовательности действий:

Настало время «бумажной» работы.

  • Заведите тетрадь, в которой вы будете делать заметки, относящиеся к процессу создания программ.
  • Нарисуйте на отдельном листе приведенную выше схему.

Обязательно указывайте, к созданию какой программы, и к какому этапу относится схема. Не забудьте отметить текущую дату!

Когда вы попробуете выполнить спроектированную последовательность, то увидите, что ее следует немного изменить, так, чтобы она выглядела так:

  • найти текст со стилем примечание и выделить его
  • вырезать найденный текст в буфер обмена
  • создать ПОЧТИ в месте расположения курсора сноску (курсор надо будет немного сместить, чтобы сноска выглядела хорошо)
  • курсор САМ перейдет в панель сносок
  • вставить вырезанный ранее текст из буфера обмена в сноску (то есть ПРОСТО вставить текст, вставка всегда происходит в место нахождения курсора, а он уже находится в нужном месте)
  • из панели сносок перейти обратно в текст

Схема также немного изменится:

Для обработки дальнейшего текста потребуется повторить эту последовательность несколько раз – до конца текста. Как это сделать, мы разберем позднее.

В «тетради документации» создайте новую схему, обозначив, что это – «улучшение» предыдущей.

Не следует исправлять схемы, внося в них изменения, не ленитесь рисовать новые! Набор последовательно изменяющихся документов будет иллюстрировать процесс создания программы, а измененная, «замаранная» схема ничего вам не скажет об этом…

Запись макроса, проверка работы

Следующий после проектирования шаг – реализация, воплощение задуманного средствами выбранного языка.

Приступим к записи макроса.

  • Убедитесь, что запущен Word и открыт созданный нами «стендовый» документ. Если открыты другие документы Word – закройте их, предварительно сохранив. Дело в том, что неверно созданный макрос может нарушить работу Word, и вы рискуете потерять свою работу. После отладки макросов такой опасности уже не будет.

Проверьте, что документ имеет «нормальный» вид, при котором вы не видите на экране страницы документа, а текст занимает все окно Word.

  • На всякий случай выполните команду меню ВидОбычный.
  • Перейдите в начало документа. Например, нажатием [Ctrl] + [Home].
  • Выполните команду СервисМакросНачать запись…

Появится окно:

Здесь вы можете определить некоторые параметры будущего макроса.

В поле Имя макроса: следует помещать содержательное имя, характеризующее макрос.

В списке Макрос доступен для: вы можете выбрать, будет ли этот макрос работать только в данном документе, или же вы хотите его использовать во всех документах Word.

Поле Описание: содержит текущую дату и имя пользователя, под которым вы зарегистрированы. Это позволит в дальнейшем определить, кто автор макроса. Пункты Назначить макрос мы пока рассматривать не будем».

  • Назначьте макросу имя, например, СтильСноска, введя его в поле Имя макроса.

Заметьте, что имя должно состоять из одного слова. Желательно – но не обязательно, – использовать английский алфавит. Обязательное условие – имя должно содержать только буквы, цифры и знак подчеркивания. Начинается имя всегда только с буквы.

  • Подтвердите настройки нажатием [Enter].

Появится небольшая панелька с кнопками управления записью макроса:

Левая кнопка (с «квадратиком») предназначена для остановки записи макроса. Правая – с «полосочками» и кружочком, – для «паузы» при записи, когда нужно произвести какие-то манипуляции, но запись их в макрос не нужна.

Наконец, начнем запись.

Иллюстрации сделаны в Word версии 2000. При работе в других версиях внешний вид диалоговых окон может немного отличаться, но принципиальных отличий нет, все манипуляции будут точно такими же.

Как мы определились, сперва надо найти участок текста, имеющий определенный стиль.

Сразу отметим, что при записи макроса допускается нажимать мышью на кнопки меню Word, но операции с текстом следует выполнять при помощи клавиатуры.

  • Выполните команду ПравкаНайти… (или нажмите [Ctrl] + [F]).

Появится диалог для выбора настроек поиска:

  • Щелкните на кнопке Больше.

Диалоговое окно увеличится, появятся дополнительные пункты:

Как видите, курсор (в виде тонкой вертикальной линии) находится в верхнем поле Найти. Ничего не вводите сюда. Ведь наша цель не поиск какого-то определенного текста, а поиск текста с особенным стилем.

  • Щелкните кнопку Формат.
  • В появившемся меню выберите пункт Стиль:

Появится окно выбора стиля.

  • Перейдите на строку со словом примечание:

  • Нажмите [Enter] или щелкните кнопку OK.

Как видите, в окне поиска сразу под полем Найти появилась строка, уточняющая параметры поиска:

Итак, параметры поиска настроены. Производим собственно поиск.

  • Щелкните кнопку Найти далее или нажмите [Enter].

Как видите, абзац искомого стиля выделяется в тексте:

Если окно параметров поиска не исчезло, щелкните по кнопке Закрыть в верхнем правом углу диалогового окна параметров поиска (не окна документа и не Word-а!), или нажмите [Esc].

Следующий шаг – «вырезание» найденного участка в буфер обмена.

  • Выполните команду ПравкаВырезать или нажмите [Ctrl]+[X].

Не забывайте, в подобных сокращениях используются латинские буквы

Обратите внимание на расположение курсора. Он находится в начале слова, следующего за найденным участком. Обычно сноски следуют за текстом, а не предшествуют ему. Поэтому переместим курсор в нужное место.

  • Один раз нажмите клавишу [] («стрелка влево»).

Курсор переместился в конец предыдущего слова, как и требовалось.

Теперь создадим сноску.

  • Выполните команду ВставкаСноска…
  • В появившемся диалоге ничего не меняйте, сразу щелкните кнопку OK или нажмите [Enter].

Как видите, внизу окна документа появилась область сносок и готовая заготовка сноски. Курсор уже перенесен в эту область, остается только ввести текст.

  • Для внесения содержимого буфера обмена выполните команду ПравкаВставить или нажмите [Ctrl]+[V].

Текст сноски создан.

Теперь для продолжения работы с самого начала следует перенести курсор обратно в основную область документа.

  • ОДИН раз щелкните мышкой в основном тексте.

Макрос записан.

Теперь остановим запись.

  • Щелкните на кнопке с «квадратиком» на панельке управления записью макроса.

Вы записали свой первый макрос.

Перед тем, как продолжить работу, выполним еще одно действие.

Так как невозможно сразу создать работоспособный макрос, обязательно потребуется отладка. А для отладки следует привести стендовый документ к первоначальному виду. Общепринятое сочетание клавиш для этого – [Ctrl]+[Z].

  • Нажмите [Ctrl]+[Z] несколько раз, до приведения документа к первоначальному виду.
  • Если панель сносок не исчезла – щелкните на кнопке Закрыть на панели сносок.

Еще один способ восстановления документа – закрытие документа без сохранения изменений. Но мы не можем так сделать, так как нужные нам изменения находятся не в видимой части документа, а в макросе. Если документ закрыть – мы утратим макрос.

  • Сохраните документ.

Следующий после реализации этап создания программ – отладка. Во время отладки производится проверка работоспособности программы, обнаружение и исправление ошибок.

Попробуем выполнить созданный макрос – чтобы проверить его работоспособность.

  • Перенесите курсор в начало текста – щелкните один раз где-нибудь в первой строке стендового документа.

Для выполнения макроса сделайте следующее.

  • Выполните команду СервисМакросМакросы… или нажмите [Alt]+[F8].

Появится окно выбора макросов (список в вашем конкретном случае может быть другим):

  • Выберите в списке созданный макрос (мы условились назвать его СтильСноска).
  • Щелкните кнопку Выполнить или нажмите [Enter].

Если выполнение прошло успешно (а это произойдет, если вы правильно выполнили все, описанное ранее), восстановите состояние документа (несколько раз нажмите [Ctrl]+[Z]).

В макросе отсутствует одна важная особенность, предусмотренная нами – автоматическая обработка всего документа.

Поэтому мы не будем останавливаться на сделанном, а осмысленно исправим созданный макрос. Но это – тема следующих занятий.

Не забудьте сохранить созданный макрос! В дальнейшем сохранение результатов работы будет подразумеваться.

Итог занятия

Мы закончили изучение материала первого занятия учебника. Подведем первые итоги.

Во-первых, мы поставили перед собою вполне практическую задачу – создать макрос, с помощью которого можно быстро и легко создать сноски в документе.

Уяснение цели – первый и важнейший этап работы. Как часто, к сожалению, можно наблюдать «программистов», работающих над чем-то, чего они и сами не понимают…

Вторым шагом занятия было создание тестового документа, применяемого для отладки будущего макроса.

Третий, очень важный шаг – проектирование макроса. Начавшись с уяснения цели работы, проектирование переходит к формулированию требований. Если уясненная цель выражается образным, «человеческим» языком, то требования формализированы, каждое слово в них должно быть взвешено и употреблено так, чтобы исключить разночтения.

Формулировка требований – начало «бумажной» работы над любым проектом. Если цель могла быть высказана устно, то требования обязательно записываются.

Следует иметь какое-то хранилище для документации проекта. Для начинающих подойдет тетрадь. Когда вы станете серьезно программировать, то обнаружите, что существуют специальные программы, облегчающие ведение документации – так называемые системы контроля версий.

Проектирование макросов, записываемых средствами приложений MS Office, имеет свою специфику и отличается от «обычного» проектирования, которое будет рассмотрено в следующей части учебника. А именно – следующий шаг создания макроса состоит в том, чтобы, основываясь на требованиях, составить последовательность манипуляций, которую надо выполнить, чтобы достичь поставленной цели. Очевидно, что для этого надо уметь пользоваться приложениями MS Office. При составлении последовательности вам пригодится тестовый документ – на нем вы будете «пробовать» найденное.

Найденную последовательность манипуляций также нужно задокументировать.

Документацию к последовательности манипуляций целесообразно отобразить графически – в виде схемы последовательности действий.

Далее последовательность действий, описанную абстрактно, желательно предельно детализировать – «нажать [F1], потом нажать [Alt]+[X]» и тому подобное. Это можно не делать, если вы очень хорошо разбираетесь в используемом приложении MS Office – но лучше все-таки сделать…

Помните, что средство записи макроса внесет в макрос все ваши действия. Для того чтобы избегнуть «мусора», надо избегать ненужных манипуляций. В худшем случае – повторите запись.

Не забудьте, что при записи макроса следует использовать клавиатуру. Использование мыши допускается для выбора и выполнения команд меню – но не для перемещения в документе!

Затем вы записали сконструированный макрос. Этот этап создания программ называется реализацией.

Эффективность этого этапа целиком зависит от того, насколько тщательно были выполнены предшествующие шаги.

Пробный запуск макроса знаменует переход к следующему шагу создания программы – отладке.

Подробно об этапах создания программ вы узнаете во второй части учебника.

kitkitch.narod.ru

Как записывать макросы и автоматизировать сложные задачи в Microsoft Word

Макросы — это набор инструкций, которые позволяют нажать кнопку или сочетание клавиш для запуска предварительно записанного действия. Мы вам расскажем о том, как легко это можно сделать в Microsoft Word.

Что такое макрос

Макрос — это просто запись серии нажатий кнопок, кликов и набора текста. Когда вы записываете макрос, вы просто нажимаете на запись, выполняете шаги, которые хотите автоматизировать, останавливаете запись, позволяете Word создавать для вас программы, а затем вы назначаете макрос определённой кнопке или комбинации клавиш. Всякий раз, когда вы захотите выполнить эту серию действий в будущем, вы просто активируете макрос.

Вы можете использовать макросы для всех видов своей работы в Word. Честно говоря, возможности практически безграничны. Например, вы можете настроить макрос, который создает новый нижний колонтитул с информацией о вашей компании, форматирует текст, как вам нравится, и даже вставляет номера страниц. И так, почему бы не обойтись без всяких макросов, просто создав обычный шаблон документа? Всё дело в том что, когда у вас есть существующий документ, к которому вы хотите добавить какие то дополнения, шаблон тут оказывается бесполезным.

Вы также можете создавать макросы для вставки уже отформатированных таблиц определенного размера, поиска определенного стиля абзаца или просто вставки любого текста.

Мы собираемся использовать самый простой пример вставки текста, чтобы просмотреть, как записывать макрос. Совет, используйте свое воображение и экспериментируйте с записью макрасов и тогда, Вы будете удивлены, сколько возможностей таит в себе эта функция.

Как записать макрос

Во-первых, создайте новый пустой документ Word для работы. Вы сможете сохранить свои макросы в общесистемной базе данных, поэтому вам не нужно создавать новые для каждого документа, над которым вы работаете. В пустом документе перейдите на вкладку «Просмотр» на ленте, выберите раскрывающееся меню «Макросы» и нажмите «Запись макроса».

Затем дайте макросу соответствующее имя и введите краткое описание. Это важный шаг, особенно если вы планируете создавать множество макросов. В нашем примере мы собираемся создать некую вставку для ввода в стиле jokey, которая вставляет в текст имя: «Lwaxana Troi, Дочь Пятого Дома, обладатель Священной Чаши Rixx, наследница Святых Кольцов Betazed» — то, что мы не хотел бы печатать снова и снова, если бы это был наш полный титул.

Выберите, следует ли назначать макрос кнопке или комбинации клавиш. И, наконец, выберите, где хранить ваш макрос. По умолчанию он сохраняется в главном шаблоне Word (файл с именем Normal.dotm), чтобы вы могли использовать его во всех ваших документах. Но вы так же можете сохранить его только в текущем документе, если хотите. Нажмите кнопку «ОК», когда закончите.

Ради этого макроса мы покажем вам процесс создания как кнопки, так и комбинации клавиш. Обратите внимание, что вы всегда можете щелкнуть по кнопке меню «Макросы» и впоследствии отредактировать эти настройки, если вы хотите их изменить.

Если вы выберете опцию «Кнопка», вам будет предоставлен экран, позволяющий выбрать, где хранить новую кнопку. По умолчанию это делается на панели быстрого доступа. Нажмите имя макроса в левом столбце, а затем нажмите кнопку «Добавить», чтобы добавить макрос в список кнопок панели инструментов, показанной справа. Когда вы закончите, нажмите кнопку «ОК».

Назначение макроса

Если вы назначаете свой макрос на клавиатурный ярлык, вместо этого вы увидите экран ниже. Убедитесь, что имя макроса выбрано в панели «Команды», щелкните внутри «Нажмите клавишу« Создать ярлык », а затем нажмите комбинацию клавиш, которую вы хотите использовать. Вы можете выбрать практически любую комбинацию Ctrl, Alt, Shift и любого другого первичного ключа, но имейте в виду, что вам понадобится тот, который еще не назначен ярлыку Word или Windows / macOS.

Теперь вы снова попали в основной текстовый интерфейс Word. Программа находится в режиме записи, поэтому выполняйте любые действия, которые вам нравятся. Вы можете нажимать кнопки, открывать меню, вставлять объекты и так далее. Word наблюдает и записывает все, что вы делаете в качестве макроса. Word на самом деле не дублирует все ваши действия, вместо этого он принимает фактические действия (определённый набор действий или команд), которые вы делаете, и создает скрипт для их запуска.

Для нашего примера мы просто повторяем наше довольно занудное имя и название:

При создании макроса вы можете нажать кнопку «Пауза записи», если вам нужно что-то подстроить или сделать несколько быстрых заметок. Нажмите кнопку «Возобновить запись», чтобы продолжить работу над вашим макросом.

Когда все будет готово, откройте раскрывающееся меню «Макросы» еще раз, а затем нажмите команду «Остановить запись».

Вот и все. Word создает макрос из вашей записи и сохраняет его как комбинацию клавиш или клавиши.

Как запустить макрос

Чтобы запустить макрос, нажмите кнопку, которую вы назначили, или нажмите комбинацию клавиш, которую вы определили. Если вы выберете опцию кнопки, вы увидите кнопку макроса на панели быстрого доступа в самой верхней части окна.

Очевидно, это очень простой пример, который мы вам дали. Вы можете использовать Word для создания довольно сложных макросов. Продвинутые пользователи могут даже вручную запрограммировать свои собственные (или вручную настроить свои записанные макросы). Но это руководство должно по крайней мере заставить вас начать создавать некоторые основные макросы.

Перевод статьи » How to Record Macros and Automate Tiresome Tasks In Microsoft Word «

Tags: Microsoft, Windows, Windows 10

greatech.ru

"Макросы в Word: общие понятия."

Урок № 16

Класс: 10 «а» Дата______________

Тема: Макросы в Word: общие понятия.

Цели урока:

обучающие:

развивающие:

  • формирование умений анализировать, выделять главное, сравнивать, формулировать определения

воспитывающие:

  • воспитание аккуратности, добросовестности, привитие интереса к изучаемому предмету

Ход урока

  1. Организационный момент 1 мин.

  2. Объяснение нового материала 19 мин.

  3. Практическая работа 23 мин.

  4. Подведение итогов 2 мин.

2. Объяснение нового материала.

Создаём макрос форматирования текстаСамое интересное то, что в офисном пакете существует возможность написания макросов – специальных дополнений выполняющих какие-либо действия на языке программирования Visual Basic. Но не пугайтесь сразу, макрос мы будем делать без программирования, а воспользуемся автоматической записью команд. Одним из самых востребованных уроков стал полезный урок о создании автоматического оглавления в Word 2007. Я решил продолжить тему Word и написать про ещё одну полезную примочку для редактора, которая позволит нам нажатием горячей кнопки производить определённые действия над документом.

Макрос мы посвятим заданному форматированию текста по определённым параметрам: укажем необходимый шрифт, кегль (размер шрифта), интерлиньяж (междустрочный интервал) и т.д.

Возможность создания макросов есть во всех приложениях Microsoft Office. Я начинаю с текстового редактора Word так как он чуть проще и знаком большому числу пользователей.

1.Что такое макросы?

Определение: Макрос это последовательность команд и инструкций для данного приложения (Word, Excel, Access, Outlook и т.д.), которые сгруппированы в одну для ее автоматического выполнения.

Чаще всего макросы используются для:

 ускорения шаблонных, рутинных действий или форматирования

Пример: Макрос вставляющий таблицу определенного размера с заданным форматом, количеством строк и столбцов.

 для ускорения доступа к командам из диалоговых окон

Пример: Макрос, присваивающий шрифт Times, размера 16, начертание полужирное (Bold) выделенному слову.

 для автоматизации сложных задач

Пример: Построитель графиков: система макросов для построения графика заданной функции.

2.Создание и выполнение макроса

1. Лучше всего сразу начать с текста, поэтому открываем сразу небольшой текст (достаточно одной страницы).

2. Для того чтобы приступить к записи макроса (записи всех выполненных команд) нужно перейти в меню Вид. На панели быстрого доступа в области Макросы необходимо нажать на надпись Макросы, что под картинкой. (Именно на надпись, так как нажатие на саму картинку откроет нам окно создание макроса с помощью Visual Basic, а мы решили создать его без ковыряния в коде).

Из выпадающего меню выбираем Запись макроса…, в поле Имя макроса задаём необходимое нам имя, к примеру, Форматирование.

В разделе Назначить макрос выбираем Клавишам. 

У нас открывается окно Настройка клавиатуры, где мы должны зажать необходимые горячие кнопки, которые как раз и будут запускать наш макрос на выполнение. (Лучше выбрать такое сочетание кнопок, которое наверняка не используется в Word, я нажал Ctrl+Shift+1, что в результате вышло так Ctrl+!). Нажимаем кнопку Назначить и потом Закрыть. Наш курсор мышки стал с небольшой кассетой, сигнализируя нам о начале записи команд. Теперь мы можем приступить к записи команд.

3. Чтобы приступить к записи макроса мы должны понимать, что он у нас должен срабатывать на любом открытом документе и чтобы выполнение команд применилось к нашему документу в дальнейшем нам необходимо начать запись с выделения всего текста. Легче всего использовать сочетание клавиш Ctrl+A (All), текст выделен. (Обратите внимание на тот факт, что пропустить этот пункт НЕЛЬЗЯ НИ В КОЕМ СЛУЧАЕ, иначе ничего не выйдет).

3. Задаём поля для нашего документа. Для этого переходим в меню Разметка страницы, на панели быстрого доступа в области Параметры страницы щёлкаем мышкой на Поля из выпадающего списка выбираем Настраиваемые поля… 

Вносим значения, к примеру, Верхнее – 0,7 см., Левое – 2 см., Нижнее – 0,7 см., Правое – 0,7 см. (Поля выбраны, в данном случае, для подшивки в папку, а почему 0,7 см., а не 0,5 см., как требуется по правилам технической документации, потому что не все старые принтеры могут печатать поля 0,5 см. Поля выбираются исходя из ваших требований).  Переплёт ставим в 0. Нажимаем кнопку ОК.

4. Переходим в меню Главная и выбираем шрифт (гарнитура), к примеру, Time New Roman, кегль (размер шрифта) – 14. Выравнивание выбираем По ширине (по формату). В этой же области Абзац нужно щёлкнуть квадратик со стрелкой, что позволит нам открыть настройки абзаца. 

Слева – 0, Справа – 0, первая строка: выбираем Отступ на: 1,25. В разделе Интервал ставим Перед – 0, После – 0, междустрочный: 1,5 строки. Нажимаем ОК.

(ОЧЕНЬ ВАЖНО. Если у вас какой-то параметр уже стоит в нужное вам значение, то всё равно нужно ещё раз его указать, иначе команда не запишется. Т.е. если вы видите, что шрифт Times New Roman у вас уже стоит, то всё равно его нужно выбрать).

5. На этом будем считать, что настройка документа закончена. Идём снова в меню Вид, снова нажимаем на Макросы и уже выбираем Остановить запись.

Наш макрос готов. Для проверки работоспособности макросы можно «сломать» свой документ: изменить шрифт, убрать поля, выравнивание и т.д. и попробовать нажать выбранную нами комбинацию Ctrl+Shift+1. Если всё сделано верно, то наш документ, в считанные секунды обретёт нужный нам вид. Либо пробуйте открыть другой документ и испытайте работу макроса на нём.

В этом уроке вы узнали:

Что такое макрос?Как создавать макрос двумя способами?Как выполнять макрос?

Практическая работа. (по учебнику стр. 154)

Домашнее задание: по конспекту.

Итог урока: выставление оценок.

infourok.ru

DigiPortfoolio OÜ печать на футболках в Нарве

Выполнение в Word повторяющейся задачи, требующей большого количества щелчков мыши или нажатий клавиш, каждый раз вызывает только раздражение. С помощью макроса можно объединить набор команд и заставить Word выполнять их по щелчку мыши или нажатию клавиши.

 

Включение макроса в Word 2010 Перейдите на вкладку ленты Разработчик. Если этой вкладки на вашей ленте нет, откройте окно Параметры Word и на вкладке Основные установите флажок на параметре Показывать вкладку «Разработчик» на ленте.

 На вкладке “Разработчик” в группе команд “Код” нажмите кнопку “Начать запись”. Откроется диалоговое окно Запись макроса. Для примера сделаем простую запись макроса, которая будет выполнять вставку текста в то место, где будет стоять курсор.Запускаем запись макроса и в диалоговом окне пишем его название и описание, а так же выбираем доступ.

 Нажмем ОК и начнется запись макроса.Напечатаем текст и добавим ему цвет.

 После чего нажмем “Остановить макрос”. Для запуска макроса нужно нажать кнопку “Макросы” или комбинацию клавиш “Alt + F8”, так же макросу можно задать в личную комбинацию клавиш или вывести кнопку в меню.

 Запустив окно “Макрос” выбираем нужный нам макрос и нажимаем выполнить, после чего он вставить в нужное нам место наш текст. Создание макроса с помощью редактора Visual Basic for Applications (VBA).

Создадим простейший макрос, который будет позволять щелкать по гиперссылке в документе Word без нажатой клавиши Ctrl

Макросы для Word пишутся на языке программирования Visual Basic for Applications (VBA).Макросы создаются в компоненте Word, который большинство пользователей никогда не видят, — в редакторе Visual Basic (VBE). Открыть редактор Visual Basic можно одним из указанных ниже способов.

  • Нажмите сочетание клавиш ALT + F11
  • Нажмите кнопку Visual Basic на вкладке Разработчик. Для этого откройте вкладку Файл и нажмите кнопку Параметры. В диалоговом окне Параметры Word нажмите кнопку Настройка ленты. В правой части диалогового окна выберите вкладку Разработчик. Нажмите кнопку ОК, чтобы вернуться к документу, а затем нажмите на вкладке Разработчик кнопку Visual Basic.
  • Добавление команды Visual Basic на панель быстрого доступа.

 Перед тем как приступить к работе с редактором Visual Basic, выберите в меню Сервис пункт Параметры. В диалоговом окне Параметры установите на вкладке Редактор все флажки.

В левом верхнем углу редактора Visual Basic расположено Окно проекта. В нем отображаются все файлы, открытые в Word в настоящий момент. Там должны отображаться файлы Normal (соответствующий шаблону Normal.dotm) и TheDocument (только что созданный файл).

На приведенном ниже рисунке показан проект TheDocument в окне проекта редактора Visual Basic.В файле макросы хранятся в виде модулей. Чтобы добавить в файл модуль, выберите в окне проекта файл TheDocument. В меню Вставка выберите пункт Модуль. После добавлении модуля в файл этот модуль появится в окне проекта и в расположенном под ним окне свойств. В окне свойств модуль можно переименовать или оставить имя по умолчанию Module1.

 Написание макроса

Большая белая область в правой части редактора Visual Basic предназначена для написания кода макроса. Если она не отображается, выберите в меню Вид пункт Код, чтобы вывести окно кода. Приложение Word автоматически вставит в начало кода оператор Option Explicit. Не удаляйте его.

Нам нужен макрос для переключения между двумя способами перехода по гиперссылке в Word. Он будет работать так же, как и другие кнопки, предназначенные для переключения между значениями параметра в Word. Кнопка Полужирный на вкладке "Главная", например, выделяет текст полужирным шрифтом, если он не был выделен, и отменяет полужирное начертание в противном случае.

Скопируйте и вставьте через буфер обмена приведенный ниже пример кода макроса в окно кода.

Sub ToggleHyperlinkCtrlClick()    Options.CtrlClickHyperlinkToOpen = Not Options.CtrlClickHyperlinkToOpenEnd Sub

Это короткий макрос ToggleHyperlinkCtrlClick, состоящий только из одной строки кода. Эта строка означает "Изменить текущее значение параметра Word, определяющего необходимость использования сочетания CTRL + щелчок для перехода по гиперссылке, на противоположное (Not).

 Тестирование макроса

Чтобы протестировать макрос, выполните указанные ниже действия.

  1. Разместите окна Word и редактора Visual Basic рядом друг с другом.
  2. Щелкните главное окно Word. Введите в документ http://google.com
  3. В редакторе Visual Basic щелкните в любом месте макроса. Чтобы запустить макрос, выберите в меню Выполнить команду Выполнить процедуру/форму пользователя или нажмите клавишу F5.
  4. Значение параметра, определяющего способ перехода по гиперссылке, изменится. Наведите указатель мыши на гиперссылку в главном окне Word и убедитесь, что подсказка изменилась.
  5. Чтобы переключить значение, запустите макрос повторно.

 

Макрос также можно запустить непосредственно в приложении Word. На вкладке Вид в группе Макросы нажмите кнопку Макросы. Откроется диалоговое окно Макрос, где в списке макросов будет и макрос ToggleHyperlinkCtrlClick. Чтобы запустить ваш макрос, щелкните его имя и нажмите кнопку Выполнить.

Создание на панели быстрого доступа кнопки для запуска макросаЧтобы запускать макрос одним щелчком мыши, можно добавить кнопку на панель быстрого доступа. Для этого выполните указанные ниже действия.

Создание кнопки на панели быстрого доступа

  1. Щелкните панель быстрого доступа правой кнопкой мыши и выберите в контекстном меню команду Настройка панели быстрого доступа. В разделе Настройка панели быстрого доступа выберите в списке Выбрать команды из пункт Макросы. В списке "Настройка панели быстрого доступа" выберите файл MyWordTools.dotm. (Это необходимо, чтобы приложение Word сохранило кнопку на панели быстрого доступа в файле MyWordTools.dotm. Если этого не сделать, при копировании файла на другой компьютер кнопка отображаться не будет.) Выберите макрос ToggleHyperlinkCtrlClick и нажмите кнопку Добавить.
  2. Нажмите кнопку Изменить, чтобы выбрать символ и изменить имя на ToggleHyperlinkCtrlClick.
  3. Теперь макрос можно запустить в любой момент, нажав кнопку на панели быстрого доступа.

 Макросы Word могут быть длинными, сложными и многофункциональными. Например, можно написать макрос для обращения к внешней базе данных, выполнения с полученными данными определенных вычислений и возврата результатов в Word. Также можно написать макрос Word для взаимодействия с Excel, PowerPoint или Outlook. В некоторых случаях и простые макросы могут оказаться полезными, позволяя сэкономить время.

Для форматирования текста больше подходят стили, чем макросы. Для изменения макета документа лучше создать новый шаблон. Кроме того, для выполнения поставленной задачи уже может существовать встроенная команда, которую можно добавить на панель быстрого доступа (при настройке панели быстрого доступа выберите в списке Выбрать команды из: пункт Все команды).  Как назначить сочетания клавиш для макросов

  • Откройте диалоговое окно Параметры Word.
  • Перейдите на закладку Настройка ленты и выбираем в командах: Макросы.
  • Потом выбираем наш макрос и с низу жмем сочетание клавиш – настройки.
  • В диалоговом окне настройки клавиатуры выбираем в категории макросы и в окне макросы выбираем нужный нам макрос.
  • Щелкаем в новое сочетание клавиш и жмем на клавиатуре нужную нам комбинацию.
  • Жмем назначить и ок

 

 

Примеры кодов:Удаление лишних пробелов в тексте без использования диалогового окна “Найти и заменить”

Sub ReplaceMultiSpaces()Dim oChar As RangeFor Each oChar In ActiveDocument.CharactersIf oChar.Text = " " ThenWhile oChar.Next(wdCharacter).Text = " "oChar.Next(wdCharacter).DeleteWendEnd IfNextEnd Sub

Расположение двух открытых документов Word рядом

Sub ArrangeDocWindows()' ArrangeDocWindows Macro' Arranges two document windows side by side verticallyDim iMiddle     As IntegerDim iClientWid  As IntegerDim iClientHi   As IntegerDim iWin1       As IntegerDim iWin2       As IntegerDim sPrompt     As StringDim sWins       As StringDim i           As Integer   iClientWid = Application.Width - 9iMiddle = Fix((iClientWid) / 2)iClientHi = Application.Height - 94    iWin1 = 1iWin2 = 2If Application.Windows.Count > 2 ThenFor i = 1 To Application.Windows.CountsPrompt = sPrompt & CStr(i) & " - " & Application.Windows(i).Caption & vbLfNextsWins = InputBox("Enter numbers of windows to arrange separated by space." & vbLf & sPrompt, _"Choose windows", "1 2")If sWins = "" ThenExit SubEnd IfiWin1 = CInt(Left(sWins, InStr(sWins, " ") - 1))iWin2 = CInt(Mid(sWins, InStr(sWins, " ") + 1))End If   Application.Windows(iWin1).ActivateApplication.Windows(iWin1).WindowState = wdWindowStateNormalWith ActiveWindow.Left = 0.Top = 0.Height = iClientHi.Width = iMiddleEnd With   Application.Windows(iWin2).ActivateApplication.Windows(iWin2).WindowState = wdWindowStateNormalWith ActiveWindow.Left = iMiddle.Top = 0.Height = iClientHi.Width = iClientWid - iMiddleEnd WithEnd SubОбратите внимание, что если у вас будет открыто только одно окно, то после нажатия этой кнопки может появиться окно с сообщением редактора кода Visual Basic об ошибке. Закройте его нажав на кнопку End. А в следующий раз будьте внимательны.

Преобразование гиперссылки в документе Word в обычный текст

Sub RemoveHyperlinks()While ActiveDocument.Hyperlinks.Count > 0ActiveDocument.Hyperlinks(1).DeleteWendApplication.Options.AutoFormatAsYouTypeReplaceHyperlinks = FalseEnd Sub

Изменения цвета заглавных букв в тексте

Sub colorAllBig()Dim fChar As RangeDim seltext As RangeDim i As LongSet seltext = Selection.RangeIf Selection.Type = wdSelectionIP ThenMsgBox "Выделите текст"ElseFor Each fChar In seltext.WordsFor i = 1 To fChar.Characters.CountIf fChar.Characters(i).Case = wdUpperCase ThenfChar.Characters(i).Font.Color = wdColorRedElsefChar.Characters(i).Font.Color = wdColorBlackEnd IfNext iNext fCharEnd IfEnd Sub

digipo.eu

Урок 30. Создание макроса в Word 2007 - 29 Мая 2013

Создаём макрос форматирования текста

Самое интересное то, что в офисном пакете существует возможность написания макросов – специальных дополнений выполняющих какие-либо действия на языке программирования Visual Basic. Но не пугайтесь сразу, макрос мы будем делать без программирования, а воспользуемся автоматической записью команд.Одним из самых востребованных уроков стал полезный урок о создании автоматического оглавления в Word 2007. Я решил продолжить тему Word и написать про ещё одну полезную примочку для редактора, которая позволит нам нажатием горячей кнопки производить определённые действия над документом.

Макрос мы посвятим заданному форматированию текста по определённым параметрам: укажем необходимый шрифт, кегль (размер шрифта), интерлиньяж (междустрочный интервал) и т.д.

Приступаем к заданию

1. Лучше всего сразу начать с текста, поэтому открываем сразу небольшой текст (достаточно одной страницы).

2. Для того чтобы приступить к записи макроса (записи всех выполненных команд) нужно перейти в меню Вид. На панели быстрого доступа в области Макросы необходимо нажать на надпись Макросы, что под картинкой. (Именно на надпись, так как нажатие на саму картинку откроет нам окно создание макроса с помощью Visual Basic, а мы решили создать его без ковыряния в коде).

Из выпадающего меню выбираем Запись макроса…, в поле Имя макроса задаём необходимое нам имя, к примеру, Форматирование.

В разделе Назначить макрос выбираем Клавишам. 

У нас открывается окно Настройка клавиатуры, где мы должны зажать необходимые горячие кнопки, которые как раз и будут запускать наш макрос на выполнение. (Лучше выбрать такое сочетание кнопок, которое наверняка не используется в Word, я нажал Ctrl+Shift+1, что в результате вышло так Ctrl+!). Нажимаем кнопку Назначить и потом Закрыть. Наш курсор мышки стал с небольшой кассетой, сигнализируя нам о начале записи команд. Теперь мы можем приступить к записи команд.

3. Чтобы приступить к записи макроса мы должны понимать, что он у нас должен срабатывать на любом открытом документе и чтобы выполнение команд применилось к нашему документу в дальнейшем нам необходимо начать запись с выделения всего текста. Легче всего использовать сочетание клавиш Ctrl+A (All), текст выделен. (Обратите внимание на тот факт, что пропустить этот пункт НЕЛЬЗЯ НИ В КОЕМ СЛУЧАЕ, иначе ничего не выйдет).

3. Задаём поля для нашего документа. Для этого переходим в меню Разметка страницы, на панели быстрого доступа в области Параметры страницы щёлкаем мышкой на Поля из выпадающего списка выбираем Настраиваемые поля… 

Вносим значения, к примеру, Верхнее – 0,7 см., Левое – 2 см., Нижнее – 0,7 см., Правое – 0,7 см. (Поля выбраны, в данном случае, для подшивки в папку, а почему 0,7 см., а не 0,5 см., как требуется по правилам технической документации, потому что не все старые принтеры могут печатать поля 0,5 см. Поля выбираются исходя из ваших требований).  Переплёт ставим в 0. Нажимаем кнопку ОК.

4. Переходим в меню Главная и выбираем шрифт (гарнитура), к примеру, Time New Roman, кегль (размер шрифта) – 14. Выравнивание выбираем По ширине (по формату). В этой же области Абзац нужно щёлкнуть квадратик со стрелкой, что позволит нам открыть настройки абзаца. 

Слева – 0, Справа – 0, первая строка: выбираем Отступ на: 1,25. В разделе Интервал ставим Перед – 0, После – 0, междустрочный: 1,5 строки. Нажимаем ОК.

(ОЧЕНЬ ВАЖНО. Если у вас какой-то параметр уже стоит в нужное вам значение, то всё равно нужно ещё раз его указать, иначе команда не запишется. Т.е. если вы видите, что шрифт Times New Roman у вас уже стоит, то всё равно его нужно выбрать).

5. На этом будем считать, что настройка документа закончена. Идём снова в меню Вид, снова нажимаем на Макросы и уже выбираем Остановить запись.

Наш макрос готов. Для проверки работоспособности макросы можно «сломать» свой документ: изменить шрифт, убрать поля, выравнивание и т.д. и попробовать нажать выбранную нами комбинацию Ctrl+Shift+1. Если всё сделано верно, то наш документ, в считанные секунды обретёт нужный нам вид. Либо пробуйте открыть другой документ и испытайте работу макроса на нём.

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

Оформляйте свои документы правильно! Успехов вам!

www.mbooom.ru

Макросы для Word

Сегодня столкнулся с задачкой: выровнять по разделителю цифры в столбце таблицы. Всё бы ничего, но таблица была сложная, с множеством объединённых ячеек и на 1500 строк (да, бывают и такие таблицы). Естественно, я не стал это делать вручную, а за 5 минут наваял простенький макрос, который сделал это за меня:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Sub CellAlignDecimal() Dim oTbl As Table 'Таблица, в которой работаем Dim oCell As Cell 'Ячейка таблицы Dim c As Integer 'Количество столбцов в таблице Set oTbl = Selection.Tables(1) 'Работаем в таблице, где находится курсор Set oCell = oTbl.Range.Cells(1) 'Первая ячейка таблицы c = oTbl.Columns.Count 'Перебор всех ячеек Do 'Обрабатываем ячейки только в последнем столбце If oCell.ColumnIndex = c Then With oCell.Range.ParagraphFormat .Alignment = wdAlignParagraphJustify 'Абзац выравниваем по ширине .FirstLineIndent = 0 'Отступ первой строки убираем .TabStops.ClearAll 'Убираем все отступы табуляции в ячейке 'Ставим позицию табуляции по разделителю посередине ячейки .TabStops.Add oCell.Width / 2, wdAlignTabDecimal, wdTabLeaderSpaces End With End If Set oCell = oCell.Next DoEvents Loop Until oCell Is Nothing End Sub
Макрос простенький, но имеет ряд нюансов работы с таблицей, на которые стоит обратить внимание:
  1. Перебор ячеек я делаю не циклом For или For Each, а циклом Do…Loop Until, выбирая следующую ячейку методом Next. Оказывается, этот способ работает быстрее для таблиц.
  2. Ячейки перебирать нужно во всей таблице, а не только в интересующем нас столбце. Это вызвано тем, что в таблице присутствуют ячейки, объединённые по столбцам и доступ к отдельным столбцам отсутствует. Именно поэтому, чтобы определить в нужном ли столбце находится текущая ячейка, я пользуюсь свойством ColumnIndex, сравнивая его с номером требуемого столбца. В моём случае это последний столбец таблицы. Также хочу обратить внимание, что я записал количество столбцов в отдельную переменную, чтобы не вычислять его каждый раз при сравнении.
  3. Установка табуляции в ячейке таблицы имеет свои особенности. Например, в моём случае табуляция проставилась так:Как видно, позиция табуляции находится чуть дальше 16,5 см, если верить линейке, но, если вызывать окно табуляции для данного абзаца, то там будет стоять цифра 1,62 см. Это вызвано тем, что позиция табуляции отсчитывается не от начала страницы, как можно подумать, глядя на линейку, а от начала текста, который этой табуляцией выравнивается. Поэтому в коде позицию табуляции я вычисляю по ширине ячейки (строка 19).
Из полезного, хочу отметить оператор DoEvents, который временно передаёт управление приложению, чтобы оно выполнило накопившиеся задачи и дало знать операционной системе, что всё в порядке. Этот оператор очень хорошо показывает себя именно в таких циклах, где перебор осуществляется внутри больших коллекций элементов. Макрос сэкономил мне массу времени, но его можно усовершенствовать: добавить диалог ввода номера(ов) столбца(ов), в ячейки которого(ых) нужно обработать. Также, если передавать его неискушённому пользователю, следует предусмотреть проверку, что курсор находится в таблице. И напоследок. Как быть, если нужно установить позицию табуляции не посередине ячейки, а в другом её месте? Как вычислить это место внутри ячейки? Прежде всего, нужно это место записать в переменную типа Range, а затем, используя метод Range.Information(wdHorizontalPositionRelativeToTextBoundary), получить положение этого диапазона относительно текста ячейки. Пример такого макроса можно посмотреть на форуме wordexpert.ru

wordmacroses.blogspot.com