Меню «Запуск»
Любая инструкция, выполняемая при выборе этой команды, отображается в окне Код с в левом поле, если выбрана панель индикатора поля на вкладке Формат редактора диалогового окна Параметры .
Если приложение ожидает событий в цикле простоя (операторы не выполняются), операторы будут выделены только в том случае, когда произойдет событие.
Режим конструктора, выход из режима конструктора
| Команда | Описание | Кнопка панели инструментов |
|---|---|---|
| Режим конструктора | Включает режим конструктора для каждого проекта, а затем переходит на выход из режима конструктора. Режим конструктора — это период, в течение которого код проекта и события хоста или проекта не выполняются. Вы можете выйти из режима конструктора, выполнив макрос или используя окно Интерпретация. | |
| Выход из режима конструктора | Выключает режим конструктора для каждого проекта и очищает все переменные уровня модуля в проекте. |
Сброс проекта, запуск проекта, остановка проекта
| Команда | Описание | Кнопка панели инструментов |
|---|---|---|
| Сброс проекта | Очищает стек Call и переменные на уровне модулей. | |
| Run Project (Запустить проект) | Помещает проект в режим, в котором его могут использовать другие приложения. Он используется для отладки и тестирования отдельного проекта, прежде чем создавать из них динамическую библиотеку (DLL). Текущий проект регистрируется, заменяя существующие регистрационные сведения проекта (например, регистрационные сведения существующей версии DLL проекта). | |
| Stop Project (Остановить проект) | Отменяет регистрацию проекта и восстанавливает предыдущие регистрационные сведения. После этого проект, хранящийся в памяти, не может быть вызван из других приложений. |
Запуск формы sub/user, continue, run macro
| Команда | Описание |
|---|---|
| Run Sub/UserForm | Выполняет текущую процедуру, если курсор находится в процедуре, или запускает форму, если форма в данный момент активна. Эта команда переходит в команду Continue в режиме приостановки выполнения. |
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Создание кнопки запуска VBA-программы на панели быстрого доступа

Чтобы вы могли быстро запустить VBA-программу, можно создать специальную кнопку и поместить её на панель быстрого доступа. Так вы в любую секунду сможете, всего лишь одним кликом получить желаемый результат.
В программах Microsoft Word, Excel, Access и PowerPoint присвоить VBA-программе определённую кнопку на панели быстрого доступа можно следующим образом:
- В левом верхнем углу приложения, сделайте клик по кнопке «Настроить панель быстрого доступа» и в появившемся меню выберите пункт «Другие команды». В результате перед вами появится окно «Параметры Word».
- Перейти в это окно можно и другим способом: перейдя на вкладку Файл Ленты и выбрав пункт «Параметры», а в нём «Панель быстрого доступа».
- В раскрывшемся диалоговом окне «Параметры Word» (Параметры Excel и т.д.) в списке «Выбрать команды из» нужно найти значение «Макросы» и выделить (выбрать) его, сделав клик левой кнопкой мыши по этому значению. В результате перед вами появится список доступных программ.
- Вам нужно найти ту программу, для которой вы хотите создать кнопку, выделить её и кликнуть по кнопке «Добавить». Кнопка должна перенестись из левого поля в поле справа.
- После того как вы нажмёте OK, кнопка появится на панели быстрого доступа. И теперь, если вы кликните по ней, то будет осуществлён запуск нужной вам VBA-программы.

Рисунок 1. Настройка панели быстрого доступа

Рисунок 2. Параметры Word

Рисунок 3. Кнопка запуска VBA-программы на панели быстрого доступа

Рисунок 4. Как добавить свою кнопку на панель быстрого доступа
Если навести указатель мыши (курсор) на эту кнопку в панели быстрого доступа, то во всплывающей подсказке отобразится имя вашей программы. Чтобы изменить эту всплывающую подсказку и изображение кнопки, нужно:
- Перейти в окно «Параметры Word» (Параметры Excel), выбрать нужную вам кнопку и нажать на кнопку «Изменить».
- В появившемся окне «Изменение кнопки» выбрать понравившийся символ и изменить текст в поле «Отображаемое имя».

Рисунок 5. Изменение кнопки на панели быстрого доступа
Чтобы удалить ненужную кнопку с панели быстрого доступа, нужно перейти в окно «Параметры Word» (Параметры Excel) (повторяем пункты 1, 2, 3 добавления кнопки), выбрать ненужную кнопку в списке справа, нажать «Удалить» и OK (в 4-ом пункте мы нажимали «Добавить», а здесь наоборот – «Удалить»).
Пошаговое руководство. Вызов кода из VBA в проекте Visual Basic
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этом пошаговом руководстве показано, как вызвать метод в настройке на уровне документа для Microsoft Office Word из кода Visual Basic для приложений (VBA) в документе. Данная процедура состоит из трех основных этапов: добавление метода в класс ведущего элемента ThisDocument , представление метода коду VBA и вызов метода из кода VBA в документе.
Область применения. Сведения в этом разделе относятся к проектам уровня документа для Excel и Word. Дополнительные сведения см. в разделе «Функции», доступные по Приложение Office ликации и типу проекта.
Хотя в этом пошаговом руководстве используется Word, рассмотренная процедура также применима к проектам на уровне документа для Excel.
В этом пошаговом руководстве рассматриваются следующие задачи:
- создание документа, содержащего код VBA;
- предоставление доверия расположению документа с помощью центра управления безопасностью в Word;
- Добавление метода в класс ведущего элемента ThisDocument
- представление метода коду VBA;
- Вызов метода из кода VBA
Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Персонализация интегрированной среды разработки Visual Studio.
Необходимые компоненты
Для выполнения этого пошагового руководства требуются следующие компоненты:
- Выпуск Visual Studio, включающий инструменты разработчика Microsoft Office. Дополнительные сведения см. в статье «Настройка компьютера для разработки решений Office».
- Microsoft Word
Создание документа, содержащего код VBA
Первым шагом является создание документа с поддержкой макросов, который содержит простой макрос VBA. При создании проекта Visual Studio, основанном на этом документе, он должен содержать проект VBA. В противном случае Visual Studio не сможет изменить проект VBA так, чтобы код VBA мог вызывать сборку настройки.
Если у вас уже есть документ, содержащий код VBA, который необходимо использовать, данный шаг можно пропустить.
Создание документа, содержащего код VBA
- Запустите приложение Word.
- Сохраните активный документ в виде документа с поддержкой макросов Word (*.docm) с именем DocumentWithVBA. Сохраните ее в удобном месте, например на рабочем столе.
- На ленте перейдите на вкладку Разработчик .
Примечание. Если вкладка Разработчик не отображается, сделайте ее видимой. Дополнительные сведения см. в разделе «Практическое руководство. Отображение вкладки разработчика на ленте».
Sub EmptySub() End Sub
Создание проекта
Теперь можно создать проект на уровне документа для Word, который использует созданный ранее документ с поддержкой макросов.
Создание проекта
- Запустите среду Visual Studio.
- В меню Файл укажите Создать, затем нажмите Проект. Если интерфейс IDE настроен на использование параметров разработки Visual Basic, последовательно выберите в меню Файл пункт Создать проект.
- В области шаблонов разверните узел Visual Basic, а затем узел Office/SharePoint.
- Выберите узел Надстройки Office .
- В списке шаблонов проектов выберите проект Документ Word 2010 или Документ Word 2013 .
- В поле Имя введите CallingCodeFromVBA.
- Щелкните OK. Откроется Мастер проектов набора средств Visual Studio для Office .
- Выберите Скопировать существующий документи в поле Полный путь к существующему документу укажите расположение документа DocumentWithVBA , созданного ранее. Если вы используете собственный документ с поддержкой макросов, укажите его расположение.
- Нажмите кнопку Готово. Visual Studio открывает документ DocumentWithVBA в конструкторе и добавляет проект CallingCodeFromVBA в Обозреватель решений.
Доверие к расположению документа
Перед предоставлением кода в своем решении коду VBA в документе необходимо предоставить доверие VBA на выполнение в документе. Для этого существует несколько способов. В целях этого пошагового руководства предоставьте доверие расположению документа в Центре управления безопасностью в Word.
Предоставление доверия расположению документа
- Запустите приложение Word.
- Перейдите на вкладку Файл .
- Нажмите кнопку Параметры Word .
- В области категорий нажмите Центр управления безопасностью.
- В области сведений нажмите Параметры центра управления безопасностью.
- В области категорий нажмите Надежные расположения.
- В области сведений нажмите Добавить новое расположение.
- В диалоговом окне Надежное расположение Microsoft Office перейдите в папку, содержащую проект CallingCodeFromVBA .
- Установите флажок Также доверять всем вложенным папкам.
- В диалоговом окне Надежное расположение Microsoft Office нажмите кнопку ОК.
- В диалоговом окне Центр управления безопасностью нажмите кнопку ОК.
- В диалоговом окне Параметры Word нажмите кнопку ОК.
- Закройте программу Word.
Добавление метода в класс ThisDocument
Теперь, когда проект VBA настроен, добавьте метод в класс ведущего элемента ThisDocument , который можно вызвать из кода VBA.
Добавление метода в класс ThisDocument
- В обозревателе решенийщелкните правой кнопкой мыши ThisDocument.vbи выберите пункт Просмотреть код. В редакторе кода открывается файл ThisDocument.vb .
- Добавьте приведенный ниже метод в класс ThisDocument . Этот метод создает таблицу с двумя строками и столбцами в начале документа. Параметры указывают текст, который отображается в первой строке. Далее в этом пошаговом руководстве данный метод будет вызываться из кода VBA в документе.
Public Sub CreateTable(ByVal firstColumnHeader As String, _ ByVal secondColumnHeader As String) Me.Paragraphs(1).Range.InsertParagraphBefore() Dim table1 As Word.Table = Me.Tables.Add(Me.Paragraphs(1).Range, 2, 2) With table1 .Style = "Table Professional" .Cell(1, 1).Range.Text = firstColumnHeader .Cell(1, 2).Range.Text = secondColumnHeader End With End Sub
Предоставление метода коду VBA
Для предоставления метода CreateTable коду VBA в документе установите для свойства EnableVbaCallers ведущего элемента ThisDocument значение True.
Порядок представления метода коду VBA
- В обозревателе решенийдважды щелкните файл ThisDocument.vb. Файл DocumentWithVBA откроется в конструкторе.
- В окне Свойства выберите свойство EnableVbaCallers и установите значение True.
- Появляется сообщение, в котором следует нажать кнопку ОК .
- Выполните сборку проекта.
Вызов метода из кода VBA
Теперь можно вызвать метод CreateTable из кода VBA в документе.
В этом пошаговом руководстве будет добавлен код VBA в документ во время отладки проекта. Код VBA, добавляемый в этот документ, будет перезаписан в следующий раз при построении проекта, так как Visual Studio заменяет документ в выходной папке сборки копией документа из главной папки проекта. Если код VBA необходимо сохранить, его можно скопировать в документ в папке проекта. Дополнительные сведения см. в разделе «Объединение настроек VBA и уровня документа».
Вызов метода из кода VBA
- Нажмите клавишу F5 для запуска проекта.
- На вкладке Разработчик в группе Код щелкните элемент Visual Basic. Открывается редактор Visual Basic.
- В меню Вставить выберите пункт Модуль.
- Добавьте в новый модуль следующий код: Этот код вызывает метод CreateTable в сборке настройки. Макрос обращается к этому методу с помощью свойства CallVSTOAssembly объекта ThisDocument . Это свойство было автоматически создано ранее при установке значения для свойства EnableVbaCallers в этом пошаговом руководстве.
Sub CreateTable() Call ThisDocument.CallVSTOAssembly.CreateTable("Employee Name", "Start Date") End Sub
Следующие шаги
Дополнительные сведения о вызове кода в решениях Office из VBA см. в следующих разделах:
- Вызов кода в настройке Visual Basic из VBA. Этот процесс отличается от процесса Visual Basic. Дополнительные сведения см. в пошаговом руководстве. Код вызова из VBA в проекте Visual C#.
- Вызов кода в надстройке VSTO из VBA. Дополнительные сведения см. в пошаговом руководстве. Код вызова в надстройке VSTO из VBA.
См. также
- Объединение настроек VBA и уровня документов
- Настройки уровня документа программы
- Практическое руководство. Предоставление кода VBA в проекте Visual Basic
- Практическое руководство. Предоставление кода VBA в проекте Visual C#
- Пошаговое руководство. Вызов кода из VBA в проекте Visual C#
Назначение макроса кнопке
С помощью кнопки (управления формы) можно запускать макрос, который выполняет действие при ее нажатии пользователем. Например, таким образом можно автоматизировать печать листа, фильтрацию данных либо расчеты.
После создания макросаего можно назначить кнопке, нажатой для запуска макроса. Макрос можно назначить кнопке на панели быстрого доступа или кнопке в личной группе на ленте.
Если вы хотите, чтобы кнопка макроса была доступна в других книгах, назначьте ее макросам, созданным в личной книге.
Добавление кнопки макроса на панель быстрого доступа
- Откройте вкладку Файл и выберите пункт Параметры, а затем — категорию Панель быстрого доступа.
- В списке Выбрать команды из выберите пункт Макрос.

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

- Чтобы использовать более имя кнопки, в поле Отображаемая имя введите нужное имя. В имя кнопки можно ввести пробел.
- Дважды нажмите кнопку ОК.
Новая кнопка появится на панели быстрого доступа, где ее можно нажать, чтобы запустить макрос.
Совет: После сохранения книгикнопки, которые вы назначаете макросам в личной книге, будут доступны во всех открытых книгах.
Добавление кнопки макроса в группу на ленте

- Щелкните Файл >Параметры >Настроить ленту.
- В списке Основные вкладки в списке Настроить ленту, если он еще не был проверен,в поле Разработчик.
- Выберите вкладку, на которой вы хотите добавить свою группу. Например, выберите Главная, чтобы добавить группу на вкладку Главная.
- Выберите Новая группа. При этом новая группа (настраиваемая) будет добавлена на вкладку, которую вы выбрали.
- Чтобы использовать более понятное имя для новой группы, нажмите кнопку Переименовать ,введите нужное имя в поле Отображаемая группа и нажмите кнопку ОК. В имени можно ввести пробел. Например, введите Мои макросы.
- Чтобы добавить макрос в группу, в списке Выбрать команды из выберите пункт Макрос.
- Выберите макрос, который вы хотите добавить в новую группу, и нажмите кнопку Добавить. Макрос будет добавлен в группу Мои макросы.
- Чтобы использовать более имя, нажмите кнопкуПереименовать и введите нужное имя в поле Отображаемого имени. В имени можно ввести пробел.
- В области Символвыберите значок кнопки для макроса.
- Дважды нажмите кнопку ОК.
Новая группа появится на вкладке, на которой можно нажать кнопку для запуска макроса.
Совет: После сохранения книгикнопки, которые вы назначаете макросам в личной книге, будут доступны во всех открытых книгах.
Более новые версии
- На вкладке Разработчик в группе Элементы управления щелкните Кнопка. Если вкладка «Разработчик» недоступна:
- Перейдите в Excel >параметры. >ленты & панели инструментов.
- В разделе Настройка ленты в разделе Основныевкладки, в разделе Разработчики нажмите кнопку ОК.
Excel 2011 для Mac
- На вкладке Разработчик в группе Элементы управления формы щелкните Кнопка. Если вкладка «Разработчик» недоступна:
- В правой части ленты нажмите кнопку и выберите параметры ленты.
- В разделе Настройки установите флажок Разработчик.