Как открыть и использовать редактор Visual Basic в Excel

Как открыть и использовать редактор Visual Basic в Excel

Первым шагом в использовании VBA в Excel является знакомство с редактором Visual Basic (также известным как редактор VBA или редактор VB).

В этом руководстве я расскажу все, что вам нужно знать о редакторе VBA, а также некоторые полезные параметры, которые вам следует знать при кодировании в Excel VBA.

Содержание:

Что такое редактор Visual Basic в Excel?

Редактор Visual Basic — это отдельное приложение, которое является частью Excel и открывается при каждом открытии книги Excel.По умолчанию он скрыт, для доступа к нему нужно его активировать.

Редактор VB — это место, где сохраняется код VB.

Вы можете получить код в редакторе VB несколькими способами:

  1. Когда вы записываете макрос, он автоматически создает новый модуль в редакторе VB и вставляет код в этот модуль.
  2. Вы можете вручную ввести код VB в редакторе VB.
  3. Вы можете скопировать код из других книг или Интернета и вставить его в редактор VB.

Откройте VB-редактор

Существует несколько способов открыть редактор Visual Basic в Excel:

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

Давайте кратко рассмотрим каждый из них.

Сочетание клавиш для открытия редактора Visual Basic

Самый простой способ открыть редактор Visual Basic — использовать сочетание клавиш — ALT + F11(Удерживая клавишу ALT, нажмите клавишу F11).

связанный вопрос  Как переименовать рабочие листы в Excel (4 простых способа + ярлыки)

После этого откроется отдельное окно редактора Visual Basic.

Этот ярлык действует как переключатель, поэтому при повторном использовании он вернет вас в приложение Excel (без закрытия редактора VB).

Клавиши быстрого доступа для версии для Mac:Выбрать+F11Fn + Опция + F11

Используйте вкладку разработчика

Чтобы открыть редактор Visual Basic с ленты:

  1. Нажмите на вкладку «Разработчик» (если вы не видите вкладку «Разработчик», читайте, как ее получить).
  2. В группе кода щелкните Visual Basic.

Кнопка редактора Visual Basic на ленте

Используйте вкладки рабочего листа

Это менее используемый способ открыть редактор Vb.

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

Посмотреть код для открытия редактора VB

Этот метод не только открывает редактор VB, но также открывает окно кода для этого объекта листа.

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

Анатомия редактора Visual Basic в Excel

Когда вы впервые открываете редактор VB, он может показаться немного ошеломляющим.

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

Кроме того, он по-прежнему имеет старый дневной вид Excel 97.Несмотря на то, что за прошедшие годы дизайн и удобство использования Excel значительно улучшились, внешний вид редактора VB никоим образом не изменился.

В этом разделе я познакомлю вас с различными частями приложения редактора Visual Basic.

Примечание. Когда я начал использовать VBA несколько лет назад, я был поражен всеми этими новыми опциями и окнами.Но когда вы привыкнете к VBA, вы будете довольны большей частью этого.В большинстве случаев вам не нужно использовать все параметры, достаточно одной руки.

Ниже приведены изображения различных компонентов редактора VB.Затем они подробно описаны в следующих разделах этого руководства.

Различные части редактора VB в Excel

Теперь давайте кратко рассмотрим каждый компонент и посмотрим, что он делает:

菜單 欄

Здесь находятся все параметры, которые вы можете использовать в редакторе VB.Это похоже на ленту Excel, где каждая вкладка имеет вкладки и параметры.

Вы можете изучить доступные параметры, нажав на каждый элемент меню.

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

工具 欄

По умолчанию редактор VB имеет панель инструментов с некоторыми полезными опциями, которые могут понадобиться вам чаще всего.Это похоже на панель быстрого доступа в Excel.Это дает вам быстрый доступ к некоторым полезным опциям.

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

Добавить или удалить параметры на панели инструментов

В большинстве случаев вам нужна только панель инструментов по умолчанию при использовании редактора VB.

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

Примечание. В редакторе VB есть четыре панели инструментов: «Стандартная», «Отладка», «Правка» и «Пользовательская форма».То, что вы видите на изображении выше (а также по умолчанию), является стандартной панелью инструментов.Вы можете получить доступ к другим панелям инструментов, перейдя к опции «Вид» и наведя курсор на опцию «Панели инструментов».При желании вы можете добавить одну или несколько панелей инструментов в редактор VB.

Браузер проекта

Project Explorer — это окно слева, в котором отображаются все объекты, открытые в данный момент в Excel.

При использовании Excel каждая открытая книга или надстройка является проектом.Каждый из этих элементов может содержать набор объектов.

Например, на изображении ниже Project Explorer показывает две открытые книги (Book1 и Book2) и объекты в каждой книге (рабочие листы, ThisWorkbook и модули в Book1).

Слева от объектов есть значок плюса, который можно использовать, чтобы свернуть список объектов или развернуть и просмотреть полный список объектов.

Обозреватель проектов в редакторе Excel VBA

Следующие объекты могут быть частью Project Explorer:

  1. Все открытые книги. В каждой книге (также называемой проектом) могут быть следующие объекты:
    • работаработа для каждого рабочего листа в книгеобъект таблицы
    • Объект ThisWorkbook, который представляет саму книгу
    • каждого листа диаграммыТаблица объект(Они не так распространены, как рабочие листы)
    • модуль- Здесь находится код, сгенерированный с помощью средства записи макросов.Вы также можете написать или скопировать код VBA сюда.
  2. Все открытые надстройки

Думайте о Project Explorer как о месте для описания всех объектов, открытых в Excel в данный момент времени.

Сочетание клавиш для открытия Project Explorer:Ctrl + R(Удерживайте нажатой клавишу управления, затем нажмите R).Чтобы закрыть его, просто щелкните значок закрытия в правом верхнем углу окна Project Explorer.

Примечание. Для каждого объекта в Project Explorer есть окно кода, в котором вы можете написать код (или скопировать и вставить откуда-нибудь).Окно кода появляется при двойном щелчке объекта.

Окно свойств

В окне «Свойства» вы можете просмотреть свойства выбранного объекта.Если у вас еще нет окна «Свойства», вы можете использовать сочетание клавиш F4 (или перейти на вкладку «Вид» и щелкнуть окно «Свойства»), чтобы получить его.

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

Окно свойств — это плавающее окно, которое можно закрепить в редакторе VB.В приведенном ниже примере я прикрепил его к Project Explorer.

Окно свойств закреплено под Project Explorer

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

Изменить видимое свойство рабочего листа в окне свойств

окно кода

Каждый объект, указанный в Project Explorer, имеет окно кода.Вы можете открыть окно кода объекта, дважды щелкнув объект в области Project Explorer.

Окно кода — это место, где вы пишете код или копируете и вставляете код из другого места.

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

Немедленное окно

Немедленное окно в основном используется для отладки кода.Один из способов использования Immediate Window — использовать оператор Print.Debug в моем коде, а затем запускать код.

Это помогает мне отлаживать мой код и определять, где мой код застрял.Если я получаю результат Print.Debug в окне Immediate, я знаю, что код действителен, по крайней мере, до этой строки.

Если вы новичок в написании кода VBA, отладка с использованием Immediate Window может занять некоторое время.

По умолчанию Immediate Window не отображается в редакторе VB.Вы можете получить его с помощью сочетания клавиш Control + G (или вы можете перейти на вкладку «Вид» и нажать «Немедленное окно»).

Куда добавить код в редакторе VB

Я надеюсь, что теперь у вас есть общее представление о редакторе VB и обо всех его частях.

В этой части руководства я покажу вам, куда добавить код VBA в редакторе Visual Basic.

В Excel есть два места для добавления кода VBA:

  1. Окно кода объекта.Этими объектами могут быть рабочие книги, рабочие листы, пользовательские формы и т. д.
  2. Окно кода для модуля.

Окно кода модуля и окно кода объекта

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

Когда вы добавляете код к любому объекту, это зависит от некоторого действия над этим объектом, которое активирует код.Например, если вы хотите отобразить все рабочие листы в рабочей книге, как только она будет открыта, код будет помещен в объект ThisWorkbook (представляющий рабочую книгу).

В этом случае триггер должен открыть книгу.

Точно так же, если вы хотите защитить лист сразу после активации другого листа, код перейдет в окно кода листа.

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

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

Когда вы записываете макрос, Excel автоматически создает модуль и вставляет в него записанный код макроса.Теперь, если вам нужно запустить этот код, вам нужно выполнить макрос вручную.

Добавьте код VBA в модуль

При записи макроса автоматически создается модуль и вставляется в него код, существуют некоторые ограничения при использовании средства записи макросов.Например, он не может использовать циклы или условия If Then Else.

В этом случае код лучше скопировать и вставить вручную или написать самому.

Модули могут использоваться для хранения следующих типов кода VBA:

  1. утверждение: Вы можете объявлять переменные в модулях.Объявление переменной позволяет указать тип данных, которые может хранить переменная.Вы можете объявлять переменные только для подпрограммы или для всех подпрограмм в модуле (или во всех модулях).
  2. подпрограмма (процедура): это код, содержащий шаги, которые вы хотите выполнить с помощью VBA.
  3. функциональный процесс: это код, который возвращает одно значение, которое можно использовать для создания пользовательской функции (также известной как определяемая пользователем функция или UDF в VBA).

По умолчанию модули не являются частью рабочей книги.Его необходимо вставить перед использованием.

Добавить модули в редакторе VB

Вот шаги для добавления модуля:

  1. Щелкните правой кнопкой мыши любой объект рабочей книги (там, где должен быть модуль).Щелкните правой кнопкой мыши на любом объекте
  2. Наведите указатель мыши на параметр вставки.
  3. Нажмите на модуль.нажмите модуль

Это немедленно создаст папку с именем Module и вставит объект с именем Module1.Если вы уже вставили один модуль, описанные выше шаги вставят другой модуль.

Вставьте модуль в редактор VB

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

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

Удалить модуль

Вот шаги для удаления модуля в Excel VBA:

  1. Щелкните правой кнопкой мыши модуль, который хотите удалить.
  2. Нажмите «Удалить модуль».Удалить модули проекта в редакторе VB
  3. В открывшемся диалоговом окне нажмите Нет.Советы перед удалением модулей

Примечание. Вы можете экспортировать модуль перед его удалением.Он сохраняется в виде файла .bas, который можно импортировать в другие проекты.Чтобы экспортировать модуль, щелкните модуль правой кнопкой мыши и выберите Экспорт файла.

Добавьте код в окно кода объекта

Чтобы открыть окно кода для объекта, просто дважды щелкните его.

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

Обратите внимание, что некоторые объекты позволяют вам выбирать события, для которых вы хотите написать код.

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

Событие изменения выбора в окне кода VBA

Примечание. Эти события относятся к объектам.Когда вы откроете окно кода для книги, вы увидите события, связанные с объектом книги.Когда вы откроете окно кода для рабочего листа, вы увидите события, связанные с объектом рабочего листа.

Пользовательский редактор VB

Хотя настройки редактора Visual Basic по умолчанию достаточны для большинства пользователей, они позволяют дополнительно настраивать интерфейс и некоторые функции.

В этой части руководства я покажу вам все варианты настройки редактора VB.

Чтобы настроить среду редактора VB, нажмите «Инструменты» в строке меню, затем нажмите «Параметры».

Откроется диалоговое окно «Параметры», которое предоставит вам все параметры настройки в редакторе VB.Диалоговое окно «Параметры» содержит четыре вкладки (показаны ниже) с различными параметрами настройки редактора Visual Basic.

Варианты настройки редактора Vb

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

вкладка редактор

Хотя встроенные настройки в большинстве случаев работают нормально, позвольте мне просмотреть параметры на этой вкладке.

По мере того, как вы станете более опытным в VBA в Excel, вы можете настроить редактор VB с помощью некоторых из этих параметров.

Автоматическая проверка грамматики

При использовании VBA в Excel, как только возникает синтаксическая ошибка, всплывает диалоговое окно (с некоторым описанием ошибки).Как показано ниже:

связанный вопрос  Как узнать, кто отписался от вас в Instagram

Автоматическая проверка синтаксиса в параметрах редактора Visual Basic

Если эта опция отключена, это всплывающее окно не появится, даже если есть синтаксическая ошибка.Однако цвет текста кода изменяется, указывая на ошибку.

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

требуется объявление переменной

Эту опцию я рекомендую включить.

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

Когда вы включаете этот параметр, он автоматически вставляет оператор «Option Explicit» в верхней части окна кода.Это заставляет вас объявлять все переменные, которые вы используете в своем коде.Если вы не объявите переменную и попытаетесь выполнить код, вы получите ошибку (как показано ниже).

Необъявленная ошибка переменной в Excel VBA

В приведенном выше примере я использовал переменную Var, но не объявлял ее.Поэтому, когда я пытаюсь запустить код, он показывает ошибку.

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

Примечание. Если этот параметр включен, он не повлияет на существующие модули.

Члены автоматического списка

Этот параметр полезен, поскольку помогает получить список свойств метода объекта.

Например, если я хочу удалить лист (Лист1), мне нужно использовать строку Лист1.Удалить.

Когда я ввожу код, как только я ввожу точку, он отображает все методы и свойства, связанные с объектом Worksheet (показан ниже).

Параметр автоматического члена списка в редакторе VB

Функция автосписка хороша тем, что позволяет:

  • Экономьте время, быстро выбирая свойства и методы из списков
  • Показывает все свойства и методы, о которых вы могли не знать
  • Избегайте орфографических ошибок

Эта опция включена по умолчанию, и я рекомендую оставить ее такой.

Опция автоматической быстрой информации

Когда вы вводите функцию на лист Excel, он показывает вам некоторую информацию о функции, например аргументы, которые она принимает.

Точно так же, когда вы вводите функцию в VBA, она покажет вам некоторую информацию (показанную ниже).Но для этого вам нужно убедиться, что опция «Автоматическая краткая информация» включена (по умолчанию).

Опция автоматической быстрой информации в редакторе VB

Опция автоматической подсказки данных

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

Я нахожу это полезным при отладке кода или пошаговом выполнении кода, содержащего циклы.

Параметр «Автоматические подсказки по данным» в параметрах редактора Visual Basic

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

Эта опция включена по умолчанию, и я рекомендую оставить ее такой.

автоматический отступ

Поскольку код VBA может стать многословным и запутанным, использование отступов повышает читабельность кода.

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

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

Включить отступ в окне кода редактора VB

В приведенном выше примере после того, как я напишу строку Debug.Print и нажму Enter, она начинается прямо под ней (с тем же уровнем отступа).

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

При желании можно изменить значение отступа.Я держу его по умолчанию.

Редактирование текста с помощью перетаскивания

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

Это экономит время, потому что вам не нужно сначала вырезать и вставлять.Вы можете просто выбрать и перетащить его.

Эта опция включена по умолчанию, и я рекомендую оставить ее такой.

По умолчанию используется полный вид модуля

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

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

Эта опция включена по умолчанию, и я рекомендую оставить ее такой.

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

разделитель программ

Когда эта опция включена, вы увидите линию (своего рода разделитель) между двумя процессами.

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

Параметр разделителя процедур в редакторе VB

Он включен по умолчанию, и я рекомендую оставить его таким.

Вкладка «Формат редактора»

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

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

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

На этой вкладке также можно установить тип и размер шрифта.Рекомендуется использовать шрифт фиксированной ширины, такой как Courier New, так как он делает код более читабельным.

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

Ниже приведено изображение с выбранными точками останова, и я могу изменить его формат.

Параметры форматирования редактора в редакторе VB

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

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

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

Вкладка «Общие»

На вкладке «Общие» есть много параметров, но вам не нужно менять ни один из них.

Я рекомендую вам оставить все параметры как есть.

Важным параметром для понимания на этой вкладке является обработка ошибок.

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

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

Вкладка "Стыковка"

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

Стыковка означает, что вы можете расположить окно (например, окно Project Explorer или окно свойств) так, чтобы оно не плавало, и вы могли просматривать все разные окна одновременно.

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

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

о, привет 👋Рад встрече.

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

Оставить комментарий