Microsoft visual basic как запустить
Перейти к содержимому

Microsoft visual basic как запустить

  • автор:

Пошаговое руководство. Вызов кода из VBA в проекте Visual Basic

В этом пошаговом руководстве показано, как вызвать метод в настройке на уровне документа для 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

  1. Запустите приложение Word.
  2. Сохраните активный документ в виде документа с поддержкой макросов Word (*.docm) с именем DocumentWithVBA. Сохраните ее в удобном месте, например на рабочем столе.
  3. На ленте перейдите на вкладку Разработчик .

Примечание. Если вкладка Разработчик не отображается, сделайте ее видимой. Дополнительные сведения см. в разделе «Практическое руководство. Отображение вкладки разработчика на ленте».

Sub EmptySub() End Sub 

Создание проекта

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

Создание проекта

  1. Запустите среду Visual Studio.
  2. В меню Файл укажите Создать, затем нажмите Проект. Если интерфейс IDE настроен на использование параметров разработки Visual Basic, последовательно выберите в меню Файл пункт Создать проект.
  3. В области шаблонов разверните узел Visual Basic, а затем узел Office/SharePoint.
  4. Выберите узел Надстройки Office .
  5. В списке шаблонов проектов выберите проект Документ Word 2010 или Документ Word 2013 .
  6. В поле Имя введите CallingCodeFromVBA.
  7. Щелкните OK. Откроется Мастер проектов набора средств Visual Studio для Office .
  8. Выберите Скопировать существующий документи в поле Полный путь к существующему документу укажите расположение документа DocumentWithVBA , созданного ранее. Если вы используете собственный документ с поддержкой макросов, укажите его расположение.
  9. Нажмите кнопку Готово. Visual Studio открывает документ DocumentWithVBA в конструкторе и добавляет проект CallingCodeFromVBA в Обозреватель решений.

Доверие к расположению документа

Перед предоставлением кода в своем решении коду VBA в документе необходимо предоставить доверие VBA на выполнение в документе. Для этого существует несколько способов. В целях этого пошагового руководства предоставьте доверие расположению документа в Центре управления безопасностью в Word.

Предоставление доверия расположению документа

  1. Запустите приложение Word.
  2. Перейдите на вкладку Файл .
  3. Нажмите кнопку Параметры Word .
  4. В области категорий нажмите Центр управления безопасностью.
  5. В области сведений нажмите Параметры центра управления безопасностью.
  6. В области категорий нажмите Надежные расположения.
  7. В области сведений нажмите Добавить новое расположение.
  8. В диалоговом окне Надежное расположение Microsoft Office перейдите в папку, содержащую проект CallingCodeFromVBA .
  9. Установите флажок Также доверять всем вложенным папкам.
  10. В диалоговом окне Надежное расположение Microsoft Office нажмите кнопку ОК.
  11. В диалоговом окне Центр управления безопасностью нажмите кнопку ОК.
  12. В диалоговом окне Параметры Word нажмите кнопку ОК.
  13. Закройте программу Word.

Добавление метода в класс ThisDocument

Теперь, когда проект VBA настроен, добавьте метод в класс ведущего элемента ThisDocument , который можно вызвать из кода VBA.

Добавление метода в класс ThisDocument

  1. В обозревателе решенийщелкните правой кнопкой мыши ThisDocument.vbи выберите пункт Просмотреть код. В редакторе кода открывается файл ThisDocument.vb .
  2. Добавьте приведенный ниже метод в класс 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

  1. В обозревателе решенийдважды щелкните файл ThisDocument.vb. Файл DocumentWithVBA откроется в конструкторе.
  2. В окне Свойства выберите свойство EnableVbaCallers и установите значение True.
  3. Появляется сообщение, в котором следует нажать кнопку ОК .
  4. Выполните сборку проекта.

Вызов метода из кода VBA

Теперь можно вызвать метод CreateTable из кода VBA в документе.

В этом пошаговом руководстве будет добавлен код VBA в документ во время отладки проекта. Код VBA, добавляемый в этот документ, будет перезаписан в следующий раз при построении проекта, так как Visual Studio заменяет документ в выходной папке сборки копией документа из главной папки проекта. Если код VBA необходимо сохранить, его можно скопировать в документ в папке проекта. Дополнительные сведения см. в разделе «Объединение настроек VBA и уровня документа».

Вызов метода из кода VBA

  1. Нажмите клавишу F5 для запуска проекта.
  2. На вкладке Разработчик в группе Код щелкните элемент Visual Basic. Открывается редактор Visual Basic.
  3. В меню Вставить выберите пункт Модуль.
  4. Добавьте в новый модуль следующий код: Этот код вызывает метод 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#

Запуск редактора Visual Basic (Visio)

В группе Код на вкладке Разработчик щелкните Visual Basic. Или нажмите клавиши ALT+F11.

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Обратная связь

Были ли сведения на этой странице полезными?

Обратная связь

Отправить и просмотреть отзыв по

Включение доступа к VBA для создания или открытия Инструменты Visual Studio для проекта системы Microsoft Office

Перед созданием или открытием Инструменты Visual Studio для проекта Microsoft Office необходимо явно включить доступ к системе проектов Visual Basic для приложений (VBA).

Для проектов разработки Microsoft Office требуется доступ к системе проектов Visual Basic для приложений (VBA) в Microsoft Office Word и Microsoft Office Excel, даже если проекты не используют Visual Basic для приложений. Поддержка элементов управления времени разработки в проектах Visual Basic и C# зависит от системы проектов Visual Basic для приложений.

Некоторые макровирусы Microsoft Office пытаются автоматизировать систему проектов Visual Basic для приложений как способ своего распространения. Разрешая доступ к системе проектов Visual Basic для приложений, вы отключаете средство защиты, которое позволяет предотвратить распространение макровирусов. Тем не менее, остаются стандартные средства обеспечения безопасности макросов: уровень безопасности макросов и список надежных издателей, поддерживаемый для приложений Office, помогут выявить выполнение макросов на компьютере.

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

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

Лучшая защита от вирусов макросов Office — запуск Office на высоком или очень высоком уровне безопасности, только доверять макросам из проверенных, известных источников и поддерживать актуальность с помощью исправлений безопасности и сканеров вирусов.

Вы можете включить или отключить параметр Trust Access to Visual Basic Project вручную.

При появлении ошибок VBA или COM можно восстановить установку Office.

Заинтересованы в разработке решений, которые расширяют возможности Office на нескольких платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office имеют небольшое пространство по сравнению с надстройками и решениями VSTO, и вы можете создавать их практически с помощью любой технологии веб-программирования, таких как HTML5, JavaScript, CSS3 и XML.

Включение или отключение доступа к проектам Visual Basic

  1. Перейдите на вкладку Файл .
  2. Щелкните Параметры.
  3. Щелкните Центр управления безопасностью и щелкните центр управления безопасностью Параметры.
  4. В Центре управления безопасностью щелкните макрос Параметры.
  5. Проверьте или не проверка Доверять доступу к объектной модели проекта VBA, чтобы включить или отключить доступ к проектам Visual Basic.
  6. Щелкните OK.

Включение или отключение доступа к проектам Visual Basic с помощью системы Microsoft Office 2007

  1. В меню «Сервис» в Word или Excel наведите указатель мыши на макрос и нажмите кнопку «Безопасность«.
  2. В диалоговом окне «Безопасность» откройте вкладку «Доверенные издатели«.
  3. Выберите, чтобы включить или очистить, чтобы отключить, trust Access to Visual Basic Project.
  4. Щелкните OK.

Настройка уровня безопасности макросов в Office

  1. Перейдите на вкладку Файл .
  2. Щелкните Параметры.
  3. Щелкните Центр управления безопасностью и щелкните центр управления безопасностью Параметры.
  4. В Центре управления безопасностью щелкните макрос Параметры.
  5. В разделе «Макрос Параметры» выберите нужный параметр.
  6. Щелкните OK.

Настройка уровня безопасности макросов Office с помощью системы Microsoft Office 2007

  1. В меню «Сервис» в Word или Excel наведите указатель мыши на макрос и нажмите кнопку «Безопасность«.
  2. На вкладке «Уровень безопасности» выберите нужный параметр. Вкладка «Уровень безопасности» содержит сведения о каждом уровне. Дополнительные сведения см. в разделе «Уровни безопасности макросов» справки Microsoft Office.

Установка VBA в выпуске 2007 системы Microsoft Office

  1. В панель управления запустите команду «Добавить или удалить программы» или «Программы и компоненты«.
  2. Выберите Office в списке установленных программ .
  3. Щелкните Изменить.
  4. Выберите » Добавить или удалить компоненты» и нажмите кнопку «Продолжить«.
  5. Нажмите кнопку «Выбрать расширенную настройку приложений» и нажмите кнопку «Далее«.
  6. Разверните общие функции Office в списке «Выбор параметров обновления» для приложений и инструментов.
  7. Откройте раскрывающееся меню рядом с Visual Basic для приложений и нажмите кнопку «Запустить с моего компьютера«.
  8. Нажмите кнопку Продолжить.
  9. Нажмите кнопку Закрыть.

Восстановление установки Office

  1. В панель управления запустите команду «Добавить или удалить программы» или «Программы и компоненты«.
  2. Выберите свою версию Office в списке установленных программ .
  3. Щелкните Изменить.
  4. Выберите «Переустановить » или «Восстановить«, а затем нажмите кнопку «Далее«.
  5. Выберите » Обнаружить и восстановить ошибки» в моей установке Office и нажмите кнопку «Установить«.

Связанный контент

Запуск макроса

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel Starter 2010 Еще. Меньше

Существует несколько способов запуска макроса в Microsoft Excel. Макрос — это действие или набор действий, с помощью которых можно автоматизировать различные задачи. Макрос записывется на Visual Basic для приложений программирования. Макрос всегда можно запустить, нажав кнопку Макрос на вкладке Разработчик на ленте. В зависимости от того, как макрос назначен для запуска, его также можно запустить, нажав сочетание клавиш сочетание клавиш, нажав кнопку на панели быстрого доступа или в настраиваемой группе на ленте либо щелкнув объект, рисунок или элемент управления. Кроме того, макрос можно запускать автоматически при запуске книги.

Перед запуском макроса

Перед началом работы с макросами следует включить вкладку Разработчик.

  • Чтобы Windows, перейдите в меню Параметры >>Настроить ленту.
  • Для Macперейдите на Excel >параметры. >ленты & панели инструментов.
  • Затем в разделе Настройка ленты в разделе Основныевкладки, в разделе Разработчик, нажмите кнопку ОК.

Запуск макроса на вкладке «Разработчик»

  1. Откройте книгу, содержащую нужный макрос.
  2. На вкладке Разработчик в группе Код нажмите кнопку Макросы.
  3. В поле Имя макроса выберите макрос, который вы хотите запустить, и нажмите кнопку Выполнить.
  4. У вас также есть другие варианты:
    • Параметры: добавление сочетания клавиш или описания макроса.
    • Шаг. Откроется Visual Basic редактора в первой строке макроса. Нажатие F8 позволит вам по одной строке пролиться между кодами макроса.
    • Изменить. Откроется редактор Visual Basic и вы сможете при необходимости изменить код макроса. После внесения изменений можно нажать F5, чтобы запустить макрос из редактора.

Запуск макроса с помощью сочетания клавиш

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

  1. На вкладке Разработчик в группе Код нажмите кнопку Макросы.
  2. В поле Имя макроса выберите макрос, который нужно назначить сочетанием клавиш.
  3. Нажмите кнопку Параметры. Откроется диалоговое окно Параметры макроса.
  4. В поле Сочетания клавиш введите любую букву в нижнем или верхнем регистре, которую вы хотите использовать с сочетаниями клавиш.

  • Для Windowsклавиша для букв в нижнем регистре — CTRL+letter. Для букв верхнего регистра это CTRL+SHIFT+Letter.
  • Для Macдля букв в нижнем регистре есть клавиши OPTION+COMMAND+LETTER,но клавиши CTRL+letter также будут работать. Для букв верхнего регистра это CTRL+SHIFT+Letter.
  • Будьте внимательны при назначении ярлыков, так как они будут переопределять все эквивалентные стандартные Excel, пока открыта книга с макросом. Например, если назначить макрос CTRL+Z,вы потеряете возможность отменить. В связи с этим обычно лучше использовать клавиши CTRL+SHIFT+БУКВА С верхнего регистра, например CTRL+SHIFT+Z, для которых в Excel нет эквивалентных Excel.

Список сочетаний клавиш CTRL, которые уже назначены в Excel, см. в статье Excel сочетания клавиш и клавиши для работы с функцией.

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

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

Запуск макроса с помощью кнопки в настраиваемой группе на ленте

Вы можете создать пользовательскую группу, которая появится на вкладке ленты, а затем назначить макрос кнопке в этой группе. Например, можно добавить настраиваемую группу «Мои макросы» на вкладку Разработчик, а затем добавить в новую группу макрос (который отображается как кнопка). Для этого см. назначение макроса кнопке.

Запуск макроса путем щелчка области графического объекта

Запуск макроса путем щелчка области графического объекта

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

  1. На компьютере вставьте графический объект, например рисунок, или нарисуйте фигуру. Распространенный сценарий — нарисовать фигуру Скруглённый прямоугольник и отформатировали ее так, чтобы она выглядела как кнопка. Чтобы узнать о вставке графического объекта, см. добавление, изменение и удаление фигур.
  2. Щелкните правой кнопкой мыши созданный хот-спот и выберите пункт Назначить макрос.
  3. Выполните одно из указанных ниже действий.
  4. Чтобы назначить существующий макрос графическому объекту, дважды щелкните макрос или введите его имя в поле Имя макроса.
  5. Чтобы записать новый макрос для назначения выбранному графическому объекту, нажмите кнопку Запись ,в диалоговом окне Запись макроса введите имя макроса и нажмите кнопку ОК, чтобы начать запись макроса. Завершив запись макроса, нажмите кнопку Остановить на вкладке Разработчик в группе Код.

Совет: Вы также можете нажать в левой части панели состояния.
Запуск макроса из редактора Visual Basic (VBE)

На вкладке Разработчик нажмите кнопку Visual Basic, чтобы запустить редактор Visual Basic(VBE). Перейдите Project проводнике, чтобы найти модуль, содержащий макрос, который вы хотите запустить, и откройте его. Все макрос в этом модуле будут перечислены в области справа. Выберите макрос, который вы хотите запустить, разместив курсор в любом месте макроса и нажимая F5или выбрав в меню пункт Выполнить > Макрос.

Настройка автоматического запуска макроса при открытии книги

Создайте Workbook_Open события.

В следующем примере событие Open используется для запуска макроса при открытии книги.

  1. Откройте или создайте книгу, в которую нужно добавить макрос.
  2. На вкладке Разработчик в группе Код нажмите кнопку Visual Basic.
  3. В окне Project проводника щелкните правой кнопкой мыши объект ThisWorkbook и выберите просмотр кода.

Совет: Если окно Project проводника не отображается, в меню Вид выберите пункт Project проводник.

Private Sub Workbook_Open()

Примечание: Ячейка A1 на листе «Лист1» также содержит дату в результате Workbook_Open процедуры.

Дополнительные сведения

Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *