Автор Тема: Excel VBA Макросы: Как создать excel-надстройку?  (Прочитано 2475 раз)

Оффлайн Администратор

  • Administrator
  • Сообщений: 1641
1. Создание надстройки
  • Создайте новую пустую книгу. Для этого в экселе: Файл - Создать - Пустая книга;
  • щёлкните Сохранить - Обзор - появится диалог, связанный с сохранением;
  • внизу, в выпадающем списке "Тип файла" выберите "Надстройка Excel (*.xlam)";
  • введите имя файла "Надстройка.xlam";
  • выберите место, где сохранить, например, Рабочий стол (чтобы проще найти). Обратите внимание, что после выбора типа файла в диалоге отобразится специфическое место, поэтому место нужно выбирать после выбора типа файла;
  • Сохранить;
  • обратите внимание, что файл закроется и на мониторе перед вами будет другой файл;
  • найдите на Рабочем столе только что созданный файл и щёлкните по нему правой кнопкой мышью - Свойства - вкладка "Подробно";
  • щёлкните справа от "Название" и запишите: Моя надстройка
  • щёлкните справа от "Комментарии" и запишите: Мои макросы
  • OK
Надстройка создана. Теперь её надо подключить и записать в неё макросы.
2. Подключение надстройки
  • В экселе: вкладка Разработчик (по умолчанию её нет, вам надо её самостоятельно отобразить) - группа Надстройки - Надстройки Excel;
  • справа щёлкните "Обзор..." и выберите только что созданную надстройку с Рабочего стола - OK;
  • надстройка подключена. При этом визуально ничего не произойдёт.
3. Запись макросов в надстройку
  • Подключите надстройку (если ещё не подключили её);
  • затем: вкладка Разработчик - группа Код - Visual Basic - запустится программа "Microsoft Visual Basic for Applications";
  • слева, в области "Project - ..." щёлкните правой кнопкой мыши по "VBAProject (Надстройка.xlam)" - Insert - Module;
  • щёлкните 2 раза по Module1 и вправо вставьте такой текст (это и есть макрос):
    Sub Test()
        MsgBox "Test.", vbInformation
    End Sub
  • щёлкните вверху "Сохранить";
  • можете закрыть программу "VBA";
  • макрос записан внутрь надстройки. Теперь осталось запустить макрос.
4. Создание кнопки на ленте для запуска макроса
  • В экселе: Файл - Параметры - Настроить ленту;
  • в выпадающем списке "Выбрать команды" выберите "Макросы" - внизу щёлкните по макросу "Test";
  • справа найдите вкладку "Главная" и внутри неё щёлкните по группе "Шрифт";
  • внизу щёлкните "Создать группу". Будет создана новая группа и она будет выделена;
  • щёлкните "Добавить >>" - в только что созданной группе будет создана кнопка - OK;
  • перейдите на вкладку Главная - после группы Шрифт должна быть группа "Новая группа";
  • щёлкните кнопку, должен запуститься макрос. Макрос выводит только сообщение "Test" и больше ничего не делает;
  • кнопка для макроса создана.


Примечания
  • Теперь вместо макроса "Test" можно использовать свой какой-нибудь макрос.
  • В самом экселе действия с лентой ограничены. Например, нельзя присвоить любую иконку кнопке. Все инструменты находятся только в параметрах и ничего больше нет. Чтобы сделать больше действий, нужно или использовать дополнительные программы для настройки ленты, или нужно залезать внутрь файла-надстройки и вносить туда изменения.