Как запустить редактор visual basic в excel

Для чего нужны макросы в excel и как их сделать: инструкция со скриншотами

Шаг 2: Связываем ваш макрос

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

  1. Скрываем не используемые группы и кнопки.

Открываем редактор Visual Basic (с помощью нажатия кнопок Alt + F11). Так как мы будем создавать ленту с одной единственной кнопкой, а шаблон содержит 50 кнопок, нам необходимо скрыть остальные 49. Чтобы сделать это, переходим в модуль RibbonSetup в программу GetVisible. Вы увидите Select Case цикл, который проходит через каждую кнопку и указывает ленте, будет ли кнопка видимой или скрытой. Так как мы ходим оставить только одну кнопку видимой, меняем аргумент переменной MakeVisible на False у всех кнопок, кроме одной.

  1. Добавляем код макроса

Далее, давайте добавим код нашего макроса в книгу. Мы создадим простейший код, который будет аналогичен команде Вставить только значения из буфера. Для этого переходим в модуль Macros и вставляем наш код.

Возвращаемся в модуль RibbonSetup, переходим к процедуре RunMacro. Добавляем имя макроса, который мы добавили до этого, к соответствующей кнопке (необходимо переписать DummyMacro).

  1. Добавляем надпись подсказки к макросу

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

  1. Добавляем имена вкладки, группы и кнопки

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

К примеру, назовем нашу вкладку Company, нашу группу PasteSpecial, а кнопку Вставить значения. Из рисунка ниже понятно, что необходимо поменять аргумент переменной Labeling на текcт, который мы хотим отобразить на ленте.

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

Настройка приложения надстройки Excel

  1. Запустите Visual Studio.
  2. В меню Файл последовательно выберите команды Создатьи Проект.
  3. В области Установленные шаблоны разверните узел C#, узел Office, а затем выберите год версии продукта Office.
  4. В области Шаблоны выберите Версия> Excel .0.0.0 (расшифровку номеров версий продуктов Office см. в разделе Версии Майкрософт), а затем, удерживая нажатой клавишу CTRL, выберите Microsoft.Office.Interop.Word, version .0.0.0 . Если вы не видите эти сборки, возможно, потребуется установить их (см. раздел Практическое руководство. Установка основных сборок взаимодействия Office).
  5. Щелкните ОК.

VBA Excel. Начинаем программировать с нуля

Первое знакомство с редактором VBA Excel, создание процедур (подпрограмм) и написание простейшего кода, работающего с переменными и ячейками рабочего листа.

Начинаем программировать с нуля Часть 1. Первая программа

Знакомство с редактором VBA

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

  1. Нажмите кнопку «Module» во вкладке «Insert» главного меню. То же подменю откроется при нажатии на вторую кнопку после значка Excel на панели инструментов.

После нажатия кнопки «Module» вы увидите ссылку на него, появившуюся в проводнике слева.

Первая программа на VBA Excel

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

  1. Откройте стандартный модуль двойным кликом по его ссылке в проводнике. Поместите в него курсор и нажмите кнопку «Procedure…» во вкладке «Insert» главного меню. Та же ссылка будет доступна при нажатии на вторую кнопку после значка Excel на панели инструментов.

В результате откроется окно добавления шаблона процедуры (Sub).

  1. Наберите в поле «Name» имя процедуры: «Primer1», или скопируйте его отсюда и вставьте в поле «Name». Нажмите кнопку «OK», чтобы добавить в модуль первую и последнюю строки процедуры.

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

  1. Вставьте внутрь шаблона процедуры следующую строку: MsgBox «Привет» .

Функция MsgBox выводит информационное сообщение с указанным текстом. В нашем примере – это «Привет».

  1. Проверьте, что курсор находится внутри процедуры, и запустите ее, нажав клавишу «F5». А также, запустить процедуру на выполнение можно, нажав на треугольник (на изображении под пунктом меню «Debug») или на кнопку «Run Sub/UserForm» во вкладке «Run» главного меню редактора VBA Excel.

Если вы увидели такое сообщение, как на изображении, то, поздравляю – вы написали свою первую программу!

Работа с переменными

Чтобы использовать в процедуре переменные, их необходимо объявить с помощью ключевого слова «Dim». Если при объявлении переменных не указать типы данных, они смогут принимать любые доступные в VBA Excel значения. Комментарии в тексте процедур начинаются со знака «’» (апостроф).

Пример 2 Присвоение переменным числовых значений:

Дополнительная информация о файлах XLSM

Макросы в файлах XLSM не запускаются по умолчанию, поскольку Excel отключает их. У Microsoft есть объяснение по включению и отключению макросов в файлах Office, если вам нужна помощь.

Файл Excel с аналогичным расширением – это файл XLSMHTML, который аналогичен файлам XLS, но представляет собой архивированный файл электронной таблицы MIME HTML, используемый в более старых версиях Excel для отображения данных электронной таблицы в HTML. Более новые версии Excel используют MHTML или MHT для публикации документов Excel в HTML.

Файлы XLSX также могут содержать макросы, но Excel не будет использовать их, если файл не преобразован в формат XLSM.

голоса

Рейтинг статьи

Настройки макроса

Когда вы открываете презентацию, которая содержит макросы, в верхней части экрана появляется желтая полоса. Нажмите кнопку «Включить макросы» на желтой панели, чтобы включить макросы для этого сеанса. Чтобы изменить глобальные настройки макросов в PowerPoint, нажмите «Представление Backstage» на вкладке «Файл». Представление «За сценой» доступно, только если активна желтая панель сообщений. Если панель сообщений не активна, выберите «Параметры» на вкладке «Файл» и выберите «Центр управления безопасностью». Выберите «Отключить все макросы без уведомления», «Отключить все макросы с уведомлением», «Отключить все макросы, кроме макросов с цифровой подписью» или «Включить все макросы (не рекомендуется; возможно выполнение потенциально небезопасного кода.)»

Быстрая установка надстроек через вкладку “Разработчик”

Начиная с Excel 2010 на вкладку “Разработчик” добавлена новая группа кнопок “Надстройки”. По умолчанию эта вкладка на ленте Excel отсутствует, для её отображения необходимо зайти в меню Файл/Параметры/Настройка ленты и в правой части диалогового окна установить флажок перед полем “Разработчик”. После этого на ленте приложения появляется одноименная вкладка с группой кнопок “Надстройки”. При помощи одной из них вызывается менеджер надстроек, в котором можно произвести выбор файла устанавливаемой надстройки.

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

Окна редактора Visual Basic

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

Окно проекта (Project)

Окно Project открывается в левой части редактора VBA (показано на картинке выше). В этом окне для каждой открытой рабочей книги создаётся проект VBA (VBA Project). Проект VBA – это набор всех объектов и модулей VBA, привязанных к текущей книге. Изначально в него входят:

  • Объект ЭтаКнига (ThisWorkbook), привязанный к книге Excel;
  • Объекты Лист (Sheet), привязанные к каждому листу текущей рабочей книги Excel.

Самостоятельно в проект можно добавить объекты Userform, Module и Class Module. Если Вы посмотрите на картинку выше, то увидите, что в проект VBA для книги Book1.xlsm добавлен объект Module с названием Module1.

Вот как можно создать новый объект Userform, Module или Class Module:

  • В окне Project выберите рабочую книгу, в которую нужно добавить объект, и кликните по ней правой кнопкой мыши.
  • В появившемся меню кликните Insert и в раскрывшемся меню выберите Userform, Module или Class Module.

Для каждого из описанных выше объектов предусмотрено специальное окно, в котором будет создаваться и храниться новый код VBA. Порядок при этом такой:

  • Код, который относится к рабочей книге, должен быть введён в соответствующий объект ЭтаКнига (ThisWorkbook);
  • Код, который относится к рабочему листу, должен быть введён в соответствующий объект Лист (Sheet);
  • Код более общего характера должен быть введён в Module;
  • Код для нового объекта должен быть введён в Class Module;
  • Если нужно создать диалоговое окно для взаимодействия с пользователем, то можно использовать Userform.

Окно кода (Code)

Двойной щелчок мышью по любому объекту в окне Project открывает соответствующее окно Code, предназначенное для ввода кода VBA с клавиатуры. На одном из приведённых выше рисунков показано окно кода для Module1.

По мере ввода кода VBA в окно Code, редактор Visual Basic следит за правильностью ввода, ищет ошибки в коде и выделяет код, который требует исправления.

Окно свойств (Properties)

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

Окно отладчика (Immediate)

Окно Immediate можно отобразить в редакторе Visual Basic через меню View > Immediate Window или нажатием комбинации клавиш Ctrl+G. Это окно помогает при отладке кода. Оно выполняет роль области вывода для отладки выражений и позволяет вычислять отдельные выражения или выполнять строки кода по одной.

Например, введите выражение “?j” и нажмите Enter – в результате будет выведено текущее значение переменной j.

Окно переменных (Locals)

Чтобы открыть окно Locals, нажмите Locals Window в меню View редактора Visual Basic. В этом окне отображаются все переменные, объявленные в текущей процедуре. Окно делится на столбцы, в которых содержатся имя, значение и тип каждой переменной, и эта информация обновляется автоматически в ходе выполнения программы. Окно Locals очень полезно при отладке кода VBA.

Окно отслеживания (Watches)

Окно Watches также очень помогает при отладке кода VBA, так как в нём можно увидеть значение, тип и контекст любого отслеживаемого выражения, которое задаст пользователь. Чтобы открыть окно Watches, нажмите Watch Window в меню View редактора Visual Basic. Также окно Watches будет открыто автоматически, если задать отслеживаемое выражение.

Чтобы задать отслеживаемое выражение, нужно:

  1. Выделить выражение в редактируемом коде VBA.
  2. В меню Debug редактора VBA нажать Quick Watch.
  3. Нажать Add.

Кроме рассмотренных, в меню редактора Visual Basic в Excel существует ещё множество параметров и команд, используемых при создании, выполнении и отладке кода VBA.

Экспорт данных в Excel

В том же самом файле добавьте в класс ThisAddIn следующий метод. Этот метод служит для настройки книги Excel и экспорта данных в нее.

  • У метода Add есть необязательный параметр для указания конкретного шаблона. Необязательные параметры позволяют опустить аргумент для этого параметра, если вы хотите использовать значение параметра по умолчанию. Так как в предыдущем примере нет аргументов, Add использует шаблон по умолчанию и создает новую книгу. В эквивалентном операторе в более ранних версиях C# необходимо было использовать аргумент-местозаполнитель excelApp.Workbooks.Add(Type.Missing) . Дополнительные сведения см. в разделе Именованные и необязательные аргументы.
  • Свойства Range и Offset объекта Range используют возможность индексированных свойств. Она позволяет использовать свойства типов COM с помощью стандартного синтаксиса C#. Кроме того, индексированные свойства позволяют использовать свойство Value объекта Range , устраняя необходимость в использовании свойства Value2 . Свойство Value является индексированным, но индекс — необязательным. Совместная работа необязательных аргументов и индексированных свойств показана в следующем примере.

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

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

Эти дополнения демонстрируют еще одну возможность C#: значения Object , возвращаемые главными приложениями COM, например приложениями Office, и обрабатываются так, как если бы они имели тип dynamic. COM-объекты обрабатываются автоматически dynamic , если типы взаимодействия Embed имеют значение True по умолчанию, или, эквивалентно, при ссылке на сборку с параметром компилятора EmbedInteropTypes . Дополнительные сведения о внедрении типов взаимодействия см. в процедурах «Поиск ссылки на PIA» и «Восстановление зависимости PIA» далее в этой статье. Дополнительные сведения о dynamic см. в разделе dynamic или Использование типа dynamic.

Сохранение пользовательских функций в файле надстройки

Как создать собственную надстройку? Рассмотрим пошагово.

Шаг 1. Создаем файл надстройки.

Открываем Microsoft Excel, создаем новую книгу и сохраняем ее под любым подходящим именем (например My_Functions) в формате надстройки. Для этого используем меню Файл – Сохранить как или клавишу . Обязательно указываем тип файла Надстройка Excel:

Ваша надстройка будет иметь расширение .xlam.

Обратите внимание, что стандартно Excel хранит надстройки в папке C:\Users\\AppData\Roaming\Microsoft\AddIns. Советую принять расположение по умолчанию

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

Шаг 2. Подключаем файл надстройки.

Теперь созданную нами надстройку My_Functions надо подключить к Excel. Тогда она будет загружаться автоматически при старте программы. Для этого используем меню Файл — Параметры — Надстройки. Убедитесь, что внизу в поле Управление выбраны Надстройки Excel. Жмем на кнопку Перейти в нижней части окна. В появившемся окне отмечаем нашу надстройку My_Functions. Если вы не видите ее в списке, нажмите кнопку Просмотр и укажите расположение вашего файла надстройки вручную.

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

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

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

Выберите в окне VBAProject ваш файл надстройки (My Finctions.xlam). Используйте меню Insert – Module, чтобы добавить пользовательский модуль. В него нужно записывать пользовательские функции.

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

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

Написание простой процедуры на Visual Basic for Application

Код любой процедуры (подпрограммы) располагается в модуле, поэтому необходимо его добавить, чтобы приступить к программированию. Выберите пункт «Module» на вкладке «Insert» основного меню редактора VBA. В основной области редактора (на изображении имеет серый фон) должно появиться новое окно кода – Имя_книги – имя_модуля (Code), а в окне управления проектами (№3) к дереву выбранного проекта добавится вновь созданный модуль.

Добавьте в модуль следующий код:

Данная процедура выводит на экран диалоговое окно с сообщением «Привет пользователь!». Протестируйте ее работу, нажав кнопку Rub Sub (№2 на изображении) или вызвав как обычный макрос.

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

Любая процедура начинается со строки объявления, состоящей из оператора Sub (сокращение от Subprogram), после которого следует имя подпрограммы. За именем следует перечень аргументов, заключенный в скобки.

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

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

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

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

Окна редактора Visual Basic

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

Окно проекта (Project)

Окно Project открывается в левой части редактора VBA (показано на картинке выше). В этом окне для каждой открытой рабочей книги создаётся проект VBA (VBA Project). Проект VBA – это набор всех объектов и модулей VBA, привязанных к текущей книге. Изначально в него входят:

  • Объект ЭтаКнига (ThisWorkbook), привязанный к книге Excel;
  • Объекты Лист (Sheet), привязанные к каждому листу текущей рабочей книги Excel.

Самостоятельно в проект можно добавить объекты Userform, Module и Class Module. Если Вы посмотрите на картинку выше, то увидите, что в проект VBA для книги Book1.xlsm добавлен объект Module с названием Module1.

Вот как можно создать новый объект Userform, Module или Class Module:

  • В окне Project выберите рабочую книгу, в которую нужно добавить объект, и кликните по ней правой кнопкой мыши.
  • В появившемся меню кликните Insert и в раскрывшемся меню выберите Userform, Module или Class Module.

Для каждого из описанных выше объектов предусмотрено специальное окно, в котором будет создаваться и храниться новый код VBA. Порядок при этом такой:

  • Код, который относится к рабочей книге, должен быть введён в соответствующий объект ЭтаКнига (ThisWorkbook);
  • Код, который относится к рабочему листу, должен быть введён в соответствующий объект Лист (Sheet);
  • Код более общего характера должен быть введён в Module>;
  • Код для нового объекта должен быть введён в Class Module>;
  • Если нужно создать диалоговое окно для взаимодействия с пользователем, то можно использовать Userform.

Окно кода (Code)

Двойной щелчок мышью по любому объекту в окне Project открывает соответствующее окно Code, предназначенное для ввода кода VBA с клавиатуры. На одном из приведённых выше рисунков показано окно кода для Module1.

По мере ввода кода VBA в окно Code, редактор Visual Basic следит за правильностью ввода, ищет ошибки в коде и выделяет код, который требует исправления.

Создать вкладку надстройки в интерфейсе Excel

Отдельная вкладка с кнопкой запуска нашего макроса будет появляться в интерфейсе Excel после подключения нашей надстройки.

Мы будем писать код вкладки с помощью бесплатной программы для редактирования XML Ribbon XML Editor

  1. Закрыть все окна Excel.
  2. Запустить программу Ribbon XML Editor и открыть в ней файл надстройки Excel Plus.xlam .
  3. При помощи кнопки tabs в левом верхнем углу добавить заготовку кода для новой вкладки
  4. В кавычки по стрелке нужно вписать id — любые уникальные идентификаторы вкладки и группы, а в label — названия вкладки и группы кнопок на ней:

При помощи кнопки button на панели слева добавляем заготовку кода для кнопки и дописываем к ней:

— Id – идентификатор кнопки; — label — текст на кнопке; — imageMso — условное название изображения на кнопке(иконка). Иконку можно выбрать из большого числа изображений, щелкнув по кнопке:

— onAction — имя процедуры обратного вызова — специального короткого макроса, который будет запускать основной макрос FindCyr . Назвать эту процедуру можно, например, FindCyrStart .

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


Закрыть Ribbon XML Editor
Открыть Excel, зайти в редактор VBA по Alt+F11 и добавить к нашему макросу процедуру вызова FindCyrStart , для запуска основного макросы поиска кириллицы.

Сохранить изменения в редакторе VBA и в Excel проверить результат:

Это всё — надстройка готова к использованию. Теперь использовать макросы в работе станет намного проще. Если показалось, что настройка ленты – это слишком сложно, всегда можно использовать кнопки для запуска макросов из панели быстрого запуска.

Как написать и использовать собственную надстройку в Excel

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

  • при открытии такого файла будет каждый раз срабатывать защита от макросов и нужно будет всякий раз подтверждать исключение безопасности или отключить защиту полностью, что небезопасно;
  • если макрос нужен везде, то и копировать код его придется в каждую книгу;
  • сохранять файл нужно в формате с поддержкой макросов (xlsm) или в формате двоичной книги (xlsb).

Если макросов много, а используются они часто более рационально будет создание собственной надстройки Excel — отдельного файла особого формата (xla – Excel2003, xlam – Excel2010 и старше), содержащего все макросы.

Плюсы такого подхода очевидны:

  • больше не будет срабатывать защита от макросов, потому что надстройки по определению входят в доверенные источники;
  • однократное подключение надстройки в Excel. Теперь её VBA процедуры и функции можно будет использовать в любом файле на компьютере. Сохранять ваши рабочие файлы в xlsm- и xlsb-форматы, также не требуется потому, что исходный текст будет храниться не в них, а в файле надстройки.
  • можно сделать отдельную вкладку на ленте Excel для запуска макросов надстройки.
  • Надстройку легко переносить с компьютера на компьютер — это отдельный файл.

Рассмотрим процесс создания своей собственной надстройки для Excel на примере Excel 2010.

Установка надстройки в Excel 2010

Стоит заметить, что в Excel 2010 редактор Visual Basic устанавливается как отдельный компонент пакета с наименованием “Общие средства Office” и называется “Visual Basic для приложений”. Узнать установлен ли у Вас редактор Visual Basic – очень просто. Нужно его запустить! О том как это сделать, можно прочитать отдельно. Если редактор Visual Basic не запустился – доустанавливаем его. Итак, переходим непосредственно к установке надстроек в Эксель!

Установить надстройку в Excel 2010 можно аналогично тому как это делается в Excel 2007.

Шаг 1. Сохраняем файл надстройки на компьютер и запоминаем место его хранения (расположения).

Шаг 2. Запускаем приложение Excel 2010, выбираем вкладку “Файл”, а затем «Параметры Excel» как показано на рисунке

Шаг 3. В появившемся окне “Параметры Excel” в поле “Управление:” выбираем “Надстройки Excel” и жмем кнопку “Перейти…”

Шаг 4. В очередном окне с названием “Надстройки” появляется список доступных надстроек, которые можно подключать и отключать установкой и снятием галочек перед названиями соответствующих надстроек. Для добавления (подключения) новых надстроек, нажимаем кнопку “Обзор”.

Появляется окно “Обзор”, которое отправляет нас искать надстройки в папку с названием Addins и это имеет свой смысл.

Именно в этом месте и должны располагаться файлы надстроек для максимально быстрого доступа к ним как приложения, так и самих пользователей. Размещение надстроек в папке Addins ускоряет загрузку приложения Excel и подключение к нему надстройки (надстроек) при последующих запусках. Перемещаем (добавляем) в это окно (в эту папку) файл, который присутствовал в Шаге 1. Если по каким-то причинам Вы не смогли, либо не захотели расположить свои надстройки в папке Addins, то через окно “Обзор” просто добираетесь до того места, где был изначально сохранен файл надстройки. Дважды кликаете по выбранному файлу и надстройка добавляется в список доступных надстроек. Все, надстройка установлена

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

Если Вы устанавливали готовые надстройки для Excel 2010, взятые с этого сайта, то после окончания процесса установки на ленте будет сформирована новая вкладка “Надстройки”. При этом в настраиваемой панели инструментов будут отображены кнопки, запускающие макросы.

Начиная с Excel 2010 появилась возможность установки надстроек на вкладке “Разработчик”.

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

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

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

Есть два места, где вы можете добавить код VBA в Excel:

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

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

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

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

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

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

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

Связанный: Узнайте больше о событиях в VBA.

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

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

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

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

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

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

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

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

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

Ниже приведены шаги по добавлению модуля:

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

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

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

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

Удаление модуля

Ниже приведены шаги по удалению модуля в Excel VBA:

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

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

Добавление кода в окно объектного кода

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

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

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

-вниз справа

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

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

Понравилась статья? Поделиться с друзьями:
Самоучитель Брин Гвелл
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: