Vba excel как назначить макрос кнопке

Макрос и средства VBA находятся на вкладке Разработчик, которая по умолчанию скрыта.

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

Вкладка "Разработчик" на ленте

Добавление кнопки (управление формы)

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

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

  3. Назначьте кнопке макрос и нажмите кнопку ОК.

  4. Чтобы задать свойства кнопки, щелкните ее правой кнопкой мыши и выберите форматирование.

Добавление кнопки (ActiveX управления)

  1. На вкладке Разработчик в группе Элементы управления нажмите кнопку Вставить, а затем вгруппе Элементы управления ActiveX нажмите кнопку Изображение кнопки .

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

  3. В группе Элементы управления нажмите кнопку Код представления. При этом Visual Basic редактора. Убедитесь, что в списке справа выбрано нажатие кнопки. При нажатии кнопки CommandButton1_Click процедуры (см. рисунок ниже) запускаются эти два макроса: SelectC15 и HelloMessage.

    Подпрограмма в редакторе Visual Basic

  4. В подпроцеду для кнопки сделайте следующее:

    • Введите имя существующего макроса в книге. Макрос можно найти, щелкнув Макрос в группе Код. С помощью кнопки можно запускать несколько макроса, вводя их имена в отдельных строках подпроцесса.

    • При необходимости добавьте собственный код VBA.

  5. Закроем Visual Basic редактора и нажмите кнопку Режим конструктора Изображение кнопки режим конструктора, чтобы отключить режим конструктора.

  6. Чтобы запустить код VBA, который теперь является частью кнопки, нажмите кнопку ActiveX, которую вы только что создали.

  7. Чтобы изменить элемент ActiveX, убедитесь, что выбран режим конструктора. На вкладке Разработчик в группе Элементы управления нажмите кнопку Режим конструктора.

  8. Чтобы задать свойства кнопки, на вкладке Разработчик в группе Элементы управления нажмите кнопку Свойства Изображение кнопки . Можно также щелкнуть правой кнопкой мыши кнопку и щелкнуть свойства .

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


    Появится поле Свойства. Для получения дополнительных сведений о каждом свойстве выберите свойство и нажмите клавишу F1, чтобы отобразить соответствующий раздел справка по Visual Basic. Можно также ввести имя свойства в поле Поиск справки Visual Basic. В следующей таблице 2010 2010 2016 2016 2016 2016 201

Описание параметра

Необходимое свойство

Общие

Загружает ли его при открытом книге. (Игнорируется для ActiveX элементов управления.)

AutoLoad (Excel)

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

Enabled (форма)

Можно ли изменять элемент управления

Locked (форма)

Имя элемента управления

Name (форма)

Способ привязки элемента управления к расположенным под ним ячейкам (не закреплен, можно перемещать, но нельзя изменять размер, можно перемещать и изменять размер)

Placement (Excel)

Можно ли выводить элемент управления на печать

PrintObject (Excel)

Является ли элемент управления видимым или скрытым

Visible (форма)

Текст

Атрибуты шрифта (полужирный, курсив, размер, зачеркивание, подчеркивание и насыщенность)

Bold, Italic, Size, StrikeThrough, Underline, Weight (форма)

Поясняющий текст элемента управления, определяющий или описывающий его

Caption (форма)

Будет ли содержимое элемента управления переноситься по словам в конце строки

WordWrap (форма)

Размер и положение

Будет ли размер элемента управления изменяться автоматически для отображения всего содержимого

AutoSize (форма)

Высота или ширина в пунктах

Height, Width (форма)

Расстояние от элемента управления до левого или верхнего края листа

Left, Top (форма)

Форматирование

Цвет фона

BackColor (форма)

Стиль фона (прозрачный или непрозрачный)

BackStyle (форма)

Цвет переднего плана

ForeColor (форма)

Наличие тени элемента управления

Shadow (Excel)

Изображение

Точечный рисунок, отображаемый в элементе управления

Picture (форма)

Положение рисунка относительно его заголовка (слева, сверху, справа и так далее)

PicturePosition (форма)

Клавиатура и мышь

Сочетание клавиш для элемента управления

Accelerator (форма)

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

MouseIcon (форма)

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

MousePointer (форма)

Будет ли фокус при щелчке.

TakeFocusOnClick (форма)


Макрос и средства VBA находятся на вкладке «Разработчик», которая по умолчанию скрыта, поэтому сначала нужно включить ее.

  1. Перейдите в Excel > параметры…> ленты & панель инструментов.

  2. В категории Настроить ленту в списке Основные вкладки установите флажок Разработчик, а затем нажмите кнопку Сохранить.

    Чтобы добавить его на ленту, выберите его рядом с "Разработчиком"

Добавление кнопки (управление формы)

Сделайте следующее:

  1. На вкладке Разработчик нажмите кнопку Изображение кнопки .

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

    Примечание: Если кнопка уже вставлена, щелкните ее правой кнопкой мыши и выберите назначить макрос.

  3. Назначьте кнопке макрос и нажмите кнопку ОК.

  4. Чтобы задать свойства кнопки, щелкните ее правой кнопкой мыши и выберите форматирование.
     

Добавление кнопки (Visual Basic управления)

  1. На вкладке Разработчик нажмите кнопку Изображение кнопки .

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

    Примечание: Если кнопка уже вставлена, щелкните ее правой кнопкой мыши и выберите назначить макрос.

  3. В диалоговом окне Назначение макроса выберите Новый, который откроет редактор Visual Basic(VBE)в области со следующим кодом:

      Sub ButtonX_Click() 
    
      End Sub

  4. В подпроцеду для кнопки между строками Sub и End Sub сделайте следующее:

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

    • Добавьте собственный код VBA.

  5. Нажмите кнопку Режим Изображение кнопки режим конструктора, чтобы режим конструктора отключен, а затем закроем Visual Basic редактора.

  6. Чтобы изменить кнопку, щелкните ее правой кнопкой мыши ивыберите Visual Basic .

  7. Чтобы задать свойства кнопки, щелкните ее правой кнопкой мыши и выберите форматирование.

Вставка командной кнопки на рабочий лист для начинающих программировать с нуля. Кнопки из коллекций «Элементы управления формы» и «Элементы ActiveX».

Начинаем программировать с нуля
Часть 3. Первая кнопка
[Часть 1] [Часть 2] [Часть 3] [Часть 4]

Добавление вкладки «Разработчик»

Вкладка с инструментами, связанными с VBA Excel, называется «Разработчик». Если этой вкладки нет на вашей ленте, добавьте ее через окно «Параметры»:

Окно «Параметры Excel»

Порядок действий:

  • Откройте окно «Параметры» через меню «Файл».
  • Выберите вкладку «Настроить ленту».
  • В правой колонке установите галочку у пункта «Разработчик» и нажмите «OK».

Кнопка – элемент управления формы

Вставка кнопки на лист

  1. Выберите вкладку «Разработчик» и нажмите на кнопку «Вставить».
  2. Нажмите на значок кнопки в коллекции «Элементы управления формы».

Добавление кнопки на рабочий лист (элемент управления формы)

  1. Кликните в любом месте на рабочем листе Excel.
  2. Откроется окно «Назначить макрос объекту». Нажмите «Отмена», так как макрос для этой кнопки еще не готов.
  3. После нажатия кнопки «Отмена», на рабочем листе появится новая кнопка из коллекции «Элементы управления формы» в режиме редактирования.

Кнопка (элемент управления формы)

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

Чтобы выйти из режима редактирования кнопки из коллекции «Элементы управления формы», кликните в любом месте на рабочем листе.

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

Создание процедуры для кнопки

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

Создайте или откройте файл Excel с расширением .xlsm (Книга Excel с поддержкой макросов) и перейдите в редактор VBA, нажав сочетание клавиш «Левая_клавиша_Alt+F11».

Если вы не создавали ранее в этом проекте VBA стандартный программный модуль, нажмите кнопку «Module» во вкладке «Insert» главного меню. То же подменю откроется при нажатии на вторую кнопку (после значка Excel) на панели инструментов.

Вставка модуля в редакторе VBA Excel

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

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

Вставка процедуры в редакторе VBA Excel

В открывшемся окне добавления шаблона процедуры оставьте выбранным переключатель «Sub», вставьте в поле «Name» название процедуры «NovayaProtsedura» и нажмите «OK».

Окно добавления процедуры в редакторе VBA Excel

В стандартный программный модуль будет вставлен шаблон процедуры «NovayaProtsedura».

Шаблон процедуры в редакторе VBA Excel

Вставьте внутрь шаблона процедуры следующий код:

‘Записываем в ячейку A1 число 44

Cells(1, 1) = 44

‘Записываем в ячейку B1 число 56

Cells(1, 2) = 56

‘Записываем в ячейку C1 формулу, которая

‘вычисляет сумму значений ячеек A1 и B1

Cells(1, 3) = «=A1+B1»

Процедура в редакторе VBA Excel

На этом процедура (подпрограмма, макрос) для кнопки готова.

Назначение макроса кнопке

Кликните правой кнопкой мыши по кнопке на рабочем листе и в контекстном меню выберите строку «Назначить макрос…», откроется окно «Назначить макрос объекту».

Окно «Назначить макрос объекту»

Выберите в списке процедуру «NovayaProtsedura» и нажмите «OK». Кликните левой кнопкой мыши по рабочему листу, чтобы командная кнопка вышла из режима редактирования.

Теперь можете нажать созданную кнопку из коллекции «Элементы управления формы» для проверки ее работоспособности.

Кнопка – элемент ActiveX

Вставка кнопки на лист

  1. Выберите вкладку «Разработчик» и нажмите на кнопку «Вставить».
  2. Нажмите на значок кнопки в коллекции «Элементы ActiveX».

Добавление кнопки на рабочий лист (элемент ActiveX)

  1. Кликните по рабочему листу и кнопка из коллекции «Элементы ActiveX» появится рядом с курсором.
  2. Автоматически включится режим редактирования, включение и отключение которого осуществляется кнопкой «Режим конструктора».

Кнопка (элемент ActiveX)

Ухватив кнопку за кружок, можно изменить ее размер, а ухватив за границу – перетащить на другое место. Чтобы отредактировать наименование кнопки, нужно кликнуть на ней правой кнопкой мыши и в контекстном меню выбрать «Объект CommandButton» > «Edit».

Добавление процедуры

Кликните дважды по кнопке из коллекции «Элементы ActiveX» левой кнопкой мыши в режиме конструктора. Это приведет к открытию модуля листа, на который вставлена кнопка, и записи шаблона процедуры «CommandButton1_Click».

Шаблон процедуры в модуле рабочего листа Excel

Вставьте внутрь шаблона процедуры код, который будет очищать ячейки A1, B1 и C1:

Процедура в модуле рабочего листа Excel

Перейдите на рабочий лист и, если кнопка «Режим конструктора» затемнена, нажмите на нее, чтобы выйти из режима редактирования. После этого нажмите кнопку «CommandButton1», и она очистит ячейки, заполненные ранее нажатием кнопки «Кнопка 1».

Две кнопки на рабочем листе Excel

Теперь кнопка из коллекции «Элементы управления формы» (Кнопка 1) будет заполнять ячейки диапазона «A1:C1», а кнопка из коллекции «Элементы ActiveX» (CommandButton1) очищать их.


Хитрости »

1 Май 2011              357426 просмотров


Как создать кнопку для вызова макроса на листе?

После создания макроса часто возникает вопрос: а как его теперь запустить? Можно, конечно, нажать сочетание клавиш Alt+F8 и выбрать нужный макрос, но…Во-первых это не всегда удобно, особенно если макросов больше 5-ти. Во-вторых: если файлом с макросом будут пользоваться другие люди, не умеющие всего этого делать, придется объяснять им все это, что тоже не очень здорово — многие просто будут вспоминать Вас не очень хорошими словами :-)

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

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


Кнопка элемент ActiveX
Данная кнопка считается устаревшей и не рекомендуется к использованию. Вот одна из причин, почему лично я не использую такие кнопки в своих проектах: Элементы ActiveX перестали работать или ведут себя непредсказуемо. Т.е. создав такую кнопку, можно заранее готовиться к тому, что в какой-то момент кнопка просто перестанет работать.
Однако многие все же предпочитают использовать именно её(либо не знают, что можно по-другому), даже не смотря на то, что назначить для этой кнопки макрос кому-то покажется сложнее, чем для остальных рассматриваемых в данной статье.
Как создать кнопку ActiveX:

  • В версии Excel 2007 и выше доступ к этим элементам возможен с вкладки Разработчик (Developer):
    Отобразить вкладку Разработчик (Developer) (если еще не отображена)
    Excel 2007: Параметры Excel(Excel Options)Основные(Popular)— галочка напротив Показывать вкладку Разработчик на ленте(Show Developer Tab on Ribbon)
    Вкладка Разработчик
    Excel 2010: Файл (File)Параметры (Options)Настройка ленты (Customize Ribbon)— галочка напротив Разработчик (Developer)
    Теперь переходим на эту вкладку и видим команду Вставить (Insert). Жмем и у нас выпадает меню с возможностью выбрать элементы:

    В категории «Элементы ActiveX» выбираем самый первый(это серенький кирпичик). Курсор приобретет вид тоненького крестика. Теперь нам надо на листе нарисовать кнопку. Все, наша кнопка готова.
  • Для обладателей версии Excel 2003 не намного все проще. Сначала необходимо отобразить панель инструментов Элементы управления. Делается это следующим образом: правая кнопка мыши на панели меню- Настройка— вкладка Панели инструментов

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

    Теперь осталось назначить созданной кнопке макрос. Для этого, не выходя из режима конструктора (в Excel 2007 он на вкладке Разработчик (Developer), а в Excel 2003 на панели Visual Basic —Режим конструктора), производим двойной щелчок по созданной кнопке — Excel перейдет в режим редактирования кода из интерфейса VBA и автоматом будет создана пустая процедура: Private Sub CommandButton1_Click(). CommandButton1 — это имя нашей кнопки. У Вас оно может отличаться. Теперь внутрь процедуры мы вписываем строку вызова макроса — Call Макрос1. Вместо Макрос1, естественно, имя необходимого макроса.

    Private Sub CommandButton1_Click()
        Call Макрос1
    End Sub

    А вот на этом, пожалуй, все для данного элемента.


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

Кнопка элемент управления формы
Здесь чуть проще. Для того, чтобы добавить данный элемент на лист для начала придется выполнить примерно те же действия, что и для создания кнопки ActiveX.
Для пользователей 2007 Excel и выше отобразить вкладку Разработчик (Developer) на ленте(если еще не отображена). Только выбор кнопки теперь надо делать из первой группы — Элементы управления форм.
для пользователей 2003 сначала надо добавить панель инструментов Формы: правая кнопка мыши на панели- Настройка— вкладка Панели инструментов. Жмем на первый элемент — серенький кирпичик. Рисуем. Как только Вы нарисуете кнопку появится меню с просьбой назначить макрос на кнопку(рис.1). Вы можете сделать это сразу, либо позже.


Автофигура
Для пользователей Excel 2007-2010: вкладка Вставка (Insert)Фигуры (Shapes). Просто выбираете любую понравившуюся фигуру.
Для пользователей Excel 2003 для начала необходимо отобразить панель инструментов Рисование, как было описано выше. Там выбрать пункт Автофигуры и выбрать из категории понравившуюся фигуру.
После создания фигуры можно кликнуть по ней правой кнопкой мыши, выбрать Формат фигуры и изменить там оформление фигуры: цвет заливки, прозрачность, обводку и еще разные опции — здесь все зависит от фантазии.


Рисунок
для пользователей Excel 2007: вкладка Вставка (Insert)Рисунок (Picture). Выбираете любой рисунок из имеющихся на компьютере.
Для пользователей 2003 сначала необходимо отобразить панель инструментов Рисование(если не отображена). Далее жмем на кнопку Добавить рисунок из файла .


как назначить макрос
Для Кнопки элемент управления формы, Автофигуры и Рисунка процедура назначения макроса совершенно одинакова: жмем правой кнопкой мыши на  элементе управления формы, фигуре или картинке — Назначить макрос.

Появится диалоговое окно выбора макросов. Выбираете нужный и жмете Ок. Все, наша кнопка готова и по её нажатии выполняется выбранный нами макрос.
рис.1

Таким же образом можно назначить макрос не только указанным элементам, но и Диаграмме, элементу Надпись, обекту WordArt, рисунку SmartArt.


Статья помогла? Поделись ссылкой с друзьями!

  Плейлист   Видеоуроки


Поиск по меткам



Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика

Введение

Всем нам приходится — кому реже, кому чаще — повторять одни и те же действия и операции в Excel. Любая офисная работа предполагает некую «рутинную составляющую» — одни и те же еженедельные отчеты, одни и те же действия по обработке поступивших данных, заполнение однообразных таблиц или бланков и т.д. Использование макросов и пользовательских функций позволяет автоматизировать эти операции, перекладывая монотонную однообразную работу на плечи Excel. Другим поводом для использования макросов в вашей работе может стать необходимость добавить в Microsoft Excel недостающие, но нужные вам функции. Например функцию сборки данных с разных листов на один итоговый лист, разнесения данных обратно, вывод суммы прописью и т.д.

Макрос — это запрограммированная последовательность действий (программа, процедура), записанная на языке программирования Visual Basic for Applications (VBA). Мы можем запускать макрос сколько угодно раз, заставляя Excel выполнять последовательность любых  нужных нам действий, которые нам не хочется выполнять вручную.

В принципе, существует великое множество языков программирования (Pascal, Fortran, C++, C#, Java, ASP, PHP…), но для всех программ пакета Microsoft Office стандартом является именно встроенный язык VBA. Команды этого языка понимает любое офисное приложение, будь то Excel, Word, Outlook или Access.

Способ 1. Создание макросов в редакторе Visual Basic

Для ввода команд и формирования программы, т.е. создания макроса необходимо открыть специальное окно — редактор программ на VBA, встроенный в Microsoft Excel.

  • В старых версиях (Excel 2003 и старше) для этого идем в меню Сервис — Макрос — Редактор Visual Basic (Toos — Macro — Visual Basic Editor).
  • В новых версиях (Excel 2007 и новее) для этого нужно сначала отобразить вкладку Разработчик (Developer). Выбираем Файл — Параметры — Настройка ленты (File — Options — Customize Ribbon) и включаем в правой части окна флажок Разработчик (Developer). Теперь на появившейся вкладке нам будут доступны основные инструменты для работы с макросами, в том числе и нужная нам кнопка Редактор Visual Basic (Visual Basic Editor)



    macro1.png:

К сожалению, интерфейс редактора VBA и файлы справки не переводятся компанией  Microsoft на русский язык, поэтому с английскими командами в меню и окнах придется смириться:

macro2.png

Макросы (т.е. наборы команд на языке VBA) хранятся в программных модулях. В любой книге Excel мы можем создать любое количество программных модулей и разместить там наши макросы. Один модуль может содержать любое количество макросов. Доступ ко всем модулям осуществляется с помощью окна Project Explorer в левом верхнем углу редактора (если его не видно, нажмите CTRL+R). Программные модули бывают нескольких типов для разных ситуаций:

  • Обычные модули — используются в большинстве случаев, когда речь идет о макросах. Для создания такого модуля выберите в меню Insert — Module. В появившееся окно нового пустого модуля можно вводить команды на VBA, набирая их с клавиатуры или копируя их из другого модуля, с этого сайта или еще откуда нибудь:

    macro3.png

  • Модуль Эта книга — также виден в левом верхнем углу редактора Visual Basic в окне, которое называется Project Explorer. В этот модуль обычно записываются макросы, которые должны выполнятся при наступлении каких-либо событий в книге (открытие или сохранение книги, печать файла и т.п.):

    macro4.png

  • Модуль листа — доступен через Project Explorer и через контекстное меню листа, т.е. правой кнопкой мыши по ярлычку листа — команда Исходный текст (View Source). Сюда записывают макросы, которые должны выполняться при наступлении определенных событий на листе (изменение данных в ячейках, пересчет листа, копирование или удаление листа и т.д.)

    macro5.png

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

macro6.png

Давайте разберем приведенный выше в качестве примера макрос Zamena:

  • Любой макрос должен начинаться с оператора Sub, за которым идет имя макроса и список аргументов (входных значений) в скобках. Если аргументов нет, то скобки надо оставить пустыми.
  • Любой макрос должен заканчиваться оператором End Sub.
  • Все, что находится между Sub и End Sub — тело макроса, т.е. команды, которые будут выполняться при запуске макроса. В данном случае макрос выделяет ячейку заливает выделенных диапазон (Selection) желтым цветом (код = 6) и затем проходит в цикле по всем ячейкам, заменяя формулы на значения. В конце выводится окно сообщения (MsgBox).

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

Способ 2. Запись макросов макрорекордером

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

  • Макрорекордер записывает только те действия, которые выполняются в пределах окна Microsoft Excel. Как только вы закрываете Excel или переключаетесь в другую программу — запись останавливается.
  • Макрорекордер может записать только те действия, для которых есть команды меню или кнопки в Excel. Программист же может написать макрос, который делает то, что Excel никогда не умел (сортировку по цвету, например или что-то подобное).
  • Если во время записи макроса макрорекордером вы ошиблись — ошибка будет записана. Однако смело можете давить на кнопку отмены последнего действия (Undo) — во время записи макроса макрорекордером она не просто возрвращает Вас в предыдущее состояние, но и стирает последнюю записанную команду на VBA.

Чтобы включить запись необходимо:

  • в Excel 2003 и старше — выбрать в меню Сервис — Макрос — Начать запись (Tools — Macro — Record New Macro)
  • в Excel 2007 и новее — нажать кнопку Запись макроса (Record macro) на вкладке Разработчик (Developer)

Затем необходимо настроить параметры записываемого макроса в окне Запись макроса:

macro7.png

  • Имя макроса — подойдет любое имя на русском или английском языке. Имя должно начинаться с буквы и не содержать пробелов и знаков препинания.
  • Сочетание клавиш — будет потом использоваться для быстрого запуска макроса. Если забудете сочетание или вообще его не введете, то макрос можно будет запустить через меню Сервис — Макрос — Макросы — Выполнить (Tools — Macro — Macros — Run) или с помощью кнопки Макросы (Macros) на вкладке Разработчик (Developer) или нажав ALT+F8.
  • Сохранить в… — здесь задается место, куда будет сохранен текст макроса, т.е. набор команд на VBA из которых и состоит макрос.:
    • Эта книга — макрос сохраняется в модуль текущей книги и, как следствие, будет выполнятся только пока эта книга открыта в Excel
    • Новая книга — макрос сохраняется в шаблон, на основе которого создается любая новая пустая книга в Excel, т.е. макрос будет содержаться во всех новых книгах, создаваемых на данном компьютере начиная с текущего момента
    • Личная книга макросов — это специальная книга Excel  с именем Personal.xls, которая используется как хранилище макросов. Все макросы из Personal.xls загружаются в память при старте Excel и могут быть запущены в любой момент и в любой книге.

После включения записи и выполнения действий, которые необходимо записать, запись можно остановить командой Остановить запись (Stop Recording).

Запуск и редактирование макросов

Управление всеми доступными макросами производится в окне, которое можно открыть с помощью кнопки Макросы (Macros) на вкладке Разработчик (Developer) или — в старых версиях Excel — через меню Сервис — Макрос — Макросы (Tools — Macro — Macros):

macro8.png

  • Любой выделенный в списке макрос можно запустить кнопкой Выполнить (Run).
  • Кнопка Параметры (Options) позволяет посмотреть и отредактировать сочетание клавиш для быстрого запуска макроса.
  • Кнопка Изменить (Edit) открывает редактор Visual Basic (см. выше) и позволяет просмотреть и отредактировать текст макроса на VBA.

Создание кнопки для запуска макросов

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

Кнопка на панели инструментов в Excel 2003 и старше

Откройте меню Сервис — Настройка (Tools — Customize) и перейдите на вкладку Команды (Commands). В категории Макросы легко найти веселый желтый «колобок» — Настраиваемую кнопку (Custom button):

macro9.gif

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

macro10.gif

Кнопка на панели быстрого доступа в Excel 2007 и новее

Щелкните правой кнопкой мыши по панели быстрого доступа в левом верхнем углу окна Excel и выберите команду Настройка панели быстрого доступа (Customise Quick Access Toolbar):

macro11.png

Затем в открывшемся окне выберите категорию Макросы и при помощи кнопки Добавить (Add) перенесите выбранный макрос в правую половину окна, т.е. на панель быстрого доступа:

macro12.png

Кнопка на листе

Этот способ подходит для любой версии Excel. Мы добавим кнопку запуска макроса прямо на рабочий лист, как графический объект. Для этого:

  • В Excel 2003 и старше — откройте панель инструментов Формы через меню Вид — Панели инструментов — Формы (View — Toolbars — Forms)
  • В Excel 2007 и новее — откройте выпадающий список Вставить (Insert) на вкладке Разработчик (Developer) 

Выберите объект Кнопка (Button):

macro13.png

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

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

Создание пользовательских функций или, как их иногда еще называют, UDF-функций (User Defined Functions) принципиально не отличается от создания макроса в обычном программном модуле. Разница только в том, что макрос выполняет последовательность действий с объектами книги (ячейками, формулами и значениями, листами, диаграммами и т.д.), а пользовательская функция — только с теми значениями, которые мы передадим ей как аргументы (исходные данные для расчета).

Чтобы создать пользовательскую функцию для расчета, например, налога на добавленную стоимость (НДС) откроем редактор VBA, добавим новый модуль через меню Insert — Module и введем туда текст нашей функции:

macro14.png

Обратите внимание, что в отличие от макросов функции имеют заголовок Function вместо Sub и непустой список аргументов (в нашем случае это Summa). После ввода кода наша функция становится доступна в обычном окне Мастера функций (Вставка — Функция) в категории Определенные пользователем (User Defined):

macro15.png

После выбора функции выделяем ячейки с аргументами (с суммой, для которой надо посчитать НДС) как в случае с обычной функцией:

macro16.png

Кнопка в Excel как ссылка на ячейку, какой-либо инструмент, созданный макрос значительно упрощает работу в программе. Чаще всего это графический объект с назначенным макросом или гиперссылкой. Рассмотрим, как сделать такую кнопку.

Как сделать кнопку на листе Excel

Суть работы: создать графический объект и назначить для него макрос или гиперссылку. Рассмотрим подробнее.

Способы создания графического объекта:

  1. Кнопка – элемент ActiveX. Переходим на вкладку «Разработчик». Нажимаем кнопку «Вставить». Открывается меню с набором элементов для вставки. Выбираем первый элемент ActiveX – «кнопку» (в виде серого кирпичика). Теперь рисуем курсором кнопку необходимого размера.
  2. Кнопка 1.

  3. Кнопка – элемент управления формы. Снова переходим на вкладку «Разработчик». Открываем меню инструмента «Вставить». Теперь выбираем элемент «кнопка» из первой группы (такой же серый кирпичик). Рисуем кнопку. Сразу открывается окно для назначения макроса: можно сделать сразу, а можно попозже.
  4. Кнопка 2.

  5. Кнопка – автофигура. Переходим на вкладку «Вставка». В меню «Иллюстрации» выбираем подходящую фигуру. Рисуем. По готовой фигуре можно щелкнуть правой кнопкой мыши и изменить оформление.
  6. Кнопка 3.

  7. Кнопка – рисунок. Переходим на вкладку «Вставка». В меню «Иллюстрации» выбираем инструмент «Рисунок». Для выбора будут предложены варианты, которые имеются на компьютере.

Кнопка 4.

Графический объект создан. Теперь нужно сделать его «рабочим».



Как в Excel сделать кнопку с макросом

К примеру, написали макрос для выполнения определенной задачи. Чтобы запускать его, нужно каждый раз заходить в меню «Разработчик». Что неудобно. Гораздо проще создать «рабочую» кнопку.

Если мы использовали элемент ActiveX, то:

Макрос 1.

Для других графических объектов макрос назначается так же. Процедура еще проще. Нужно щелкнуть правой кнопкой мыши по нарисованной кнопке или картинке и выбрать инструмент «Назначить макрос».

Назначить макрос.

Другие варианты использования кнопок

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

Нарисуем графический объект и выделим его. На вкладке «Вставка» найдем кнопку «Гиперссылка».

Гиперссылка.

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

Вставка гиперссылки.

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

Подобные задачи можно выполнять и с помощью макросов. Например, чтобы при нажатии, пользователь попадал в определенную ячейку (М6), прописываем следующий код:

Sub Макрос 1()
Range(«M6»).Select
End Sub

Точно так же можно назначить макрос диаграмме, объектам WordArt, SmartAtr.

Как сделать кнопку сортировки в Excel для таблиц

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

Какого товара больше продано по месяцам.

  1. Вместо заголовков колонки таблицы добавим автофигуры, которые будут служить кнопками для сортировки по столбцам таблицы.
  2. Авто-фигуры как заголовки.

  3. В режиме Visual Basic — ALT+F11 в папке Modules вставляем новый модуль Module1. Для этого делаем по папке правый щелчок мышкой и выбираем: Insert-Module.
  4. Module1.

  5. Делаем двойной щелчок по Module1 и вводим в него следующий код:

  6. Sub Макрос1()
    ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear
    ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«A2:A6«), _
    SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets(«Лист1»).Sort
    .SetRange Range(«A2:D6»)
    .Apply
    End With
    End Sub
    ‘————————————————
    Sub Макрос2()
    ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear
    ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«B2:B6«), _
    SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets(«Лист1»).Sort
    .SetRange Range(«A2:D6»)
    .Apply
    End With
    End Sub
    ‘————————————————
    Sub Макрос3(
    )
    ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear
    ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«C2:C6«), _
    SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets(«Лист1»).Sort
    .SetRange Range(«A2:D6»)
    .Apply
    End With
    End Sub
    ‘————————————————
    Sub Макрос4()
    ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear
    ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«D2:D6«), _
    SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets(«Лист1»).Sort
    .SetRange Range(«A2:D6»)
    .Apply
    End With
    End Sub

    Примечание. Красным текстом отмечены отличающиеся параметры для каждого столбца.

  7. Назначаем каждой автофигуре свой макрос: для «Наименование» – Макрос1, а для «Май» – Макрос2 и т.д.

Все теперь достаточно только кликнуть по заголовку и таблица отсортирует данные относительно определенного столбца. Для удобства столбец «Наименование» Макрос1 сортирует по возрастанию благодаря параметру Order:=xlAscending. Во всех остальных столбцах присвоены макросы (2,3,4) с параметром Order:=xlDescending, который задает тип сортировки по убыванию. Чтобы видно было, в каком месяце было больше продано товара.

Скачать пример кнопки сортировки

Примечание. Такие простые макросы можно создать в автоматическом режиме без программирования или без написания VBA-кода, с помощью инструмента «Запись макроса».

Создание кнопки в Microsoft Excel

Кнопка в Microsoft Excel

​Смотрите также​ выставляется ссылка​Формы​Управление всеми доступными макросами​ она не просто​и​ VBA и файлы​ одни и те​ следующий код:​ с набором элементов​Закрываем редактор, и запускаем​ этой же книге​Теперь после нажатия на​ в документе.​Автор: Максим Тютюшев​ окна. Теперь вкладка​

​ котором желаем расположить​Excel является комплексным табличным​

Процедура создания

​Karataev​через меню​ производится в окне,​ возрвращает Вас в​End Sub​ справки не переводятся​ же действия и​Sub Макрос 1()​ для вставки. Выбираем​ макрос, как и​ (файле), но при​ кнопку будет выполняться​После выбора нажмите кнопку​Табличный процессор Excel вмещает​

Способ 1: автофигура

​ разработчика будет активирована​ объект. Переходим во​ процессором, перед которым​: так можно добавить​

  1. ​Вид — Панели инструментов​​ которое можно открыть​​ предыдущее состояние, но​​- тело макроса,​​ компанией Microsoft на​ операции в Excel.​Range(«M6»).Select​​ первый элемент ActiveX​​ в прошлый раз.​ желании можно установить​ тот макрос, который​ «ОК».​ в себя огромное​ в вашей версии​ вкладку​ пользователи ставят самые​ на ленту кнопку​

    Выбор фигуры в Microsoft Excel

  2. ​ — Формы (View​ с помощью кнопки​ и стирает последнюю​ т.е. команды, которые​ русский язык, поэтому​ Любая офисная работа​End Sub​ – «кнопку» (в​ Как видим, вследствие​

    Сдвиг границ в Microsoft Excel

  3. ​ хранение в новой​ вы указали. Теперь​На этом создание кнопки​ количество опций и​ Excel.​«Вставка»​ разнообразные задачи. Одной​ для макроса средствами​ — Toolbars -​Макросы (Macros)​ записанную команду на​​ будут выполняться при​​ с английскими командами​

    Добавление гиперссылки в Microsoft Excel

  4. ​ предполагает некую «рутинную​Точно так же можно​ виде серого кирпичика).​​ введенных нами изменений​​ книге, или в​ вы знаете все​ первым способом закончено.​ функций, не исключая​​После этого перемещаемся во​​и кликаем по​

Окно создания гиперссылки в Microsoft Excel

​ из таких задач​ самой программы excel​ Forms)​на вкладке​ VBA.​

Кнопка создана в Microsoft Excel

​ запуске макроса. В​​ в меню и​ составляющую» — одни​

Способ 2: стороннее изображение

​ назначить макрос диаграмме,​ Теперь рисуем курсором​ была добавлена ещё​

  1. ​ отдельной книге макросов.​ три способа, как​ Теперь после нажатия​ даже возможность создания​
  2. ​ вкладку​ значку​ является создание кнопки​Файл —> Параметры—>Настройка​​В Excel 2007 и​​Разработчик (Developer)​Чтобы включить запись необходимо:​​ данном случае макрос​​ окнах придется смириться:​ и те же​ объектам WordArt, SmartAtr.​​ кнопку необходимого размера.​​ одна ячейка с​

    Переход к выбору рисунка в Microsoft Excel

  3. ​ Мы оставим значение​ сделать кнопку в​ по ней вы​ кнопки. На первый​«Разработчик»​«Рисунок»​ на листе, нажатие​ ленты —>Выбрать команды​ новее — откройте​​или — в​​в Excel 2003 и​

    Окно выбора рисунка в Microsoft Excel

  4. ​ выделяет ячейку заливает​Макросы (т.е. наборы команд​ еженедельные отчеты, одни​Для показательного примера создайте​Кнопка – элемент управления​ данными. Она также​ по умолчанию.​ Excel.​ будете переходить на​

    Выравнивание размеров кнопки в Microsoft Excel

  5. ​ взгляд абсолютно ненужный​. Щелкаем по кнопке​, который расположен на​ на которую запускало​ —>Макросы—> выберите макрос—>справа​ выпадающий список​ старых версиях Excel​ старше — выбрать​ выделенных диапазон (Selection)​ на языке VBA)​ и те же​ тестовую таблицу как​​ формы. Снова переходим​​ была включена в​

    Переход к назначению макроса в Microsoft Excel

  6. ​В самом нижнем поле​Вот мы и рассмотрели​ другой лист в​ элемент некоторым пользователям​«Вставить»​ ленте в блоке​ бы определенный процесс.​ выберите или создайте​Вставить (Insert)​ — через меню​ в меню​​ желтым цветом (код​​ хранятся в программных​

Выбор макроса в Microsoft Excel

​ действия по обработке​ на рисунке:​ на вкладку «Разработчик».​

Кнопка на листе в Microsoft Excel

​ расчет общей суммы.​​ настройки макросов можно​ три способа, как​

Способ 3: элемент ActiveX

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

  1. ​Сервис — Макрос -​Сервис — Макрос -​ = 6) и​ модулях. В любой​ поступивших данных, заполнение​Вместо заголовков колонки таблицы​ Открываем меню инструмента​В случае, если макрос​ оставить любое подходящее​ в Excel сделать​ вы столкнулись с​ необходим. В этой​​ в блоке инструментов​​«Иллюстрации»​ решаема с помощью​​ которую нужно вставить​​Разработчик (Developer)​

    Перемещение в раздел Параметры в Microsoft Excel

  2. ​ Макросы​ Начать запись​​ затем проходит в​​ книге Excel мы​ однообразных таблиц или​ добавим автофигуры, которые​​ «Вставить». Теперь выбираем​​ слишком большой, его​ по контексту описание​ активные кнопки. Как​​ какими-либо трудностями или​​ статье будет рассказано,​«Элементы управления»​.​ инструментария Эксель. Давайте​ кнопку,—>Добавить>>​

    Включение режима разработчика в Microsoft Excel

  3. ​ ​(Tools — Macro -​​(Tools — Macro -​​ цикле по всем​​ можем создать любое​​ бланков и т.д.​ будут служить кнопками​​ элемент «кнопка» из​​ выполнение может занять​​ данного макроса. Но,​​ можно заметить, каждый​ же этот метод​ как сделать кнопку​

    Создание кнопки через элементы ActiveX в Microsoft Excel

  4. ​. В группе​Открывается окно выбора изображения.​ разберемся, какими способами​Vostok​Выберите объект​ Macros)​ Record New Macro)​ ячейкам, заменяя формулы​ количество программных модулей​

    Элемент ActiveX в Microsoft Excel

  5. ​ Использование макросов и​ для сортировки по​ первой группы (такой​

    Щелчок по элементу ActiveX в Microsoft Excel

  6. ​ значительное время. Но,​ это делать не​ из них в​ просто вам не​ в Excel и​«Элементы ActiveX»​ Переходим с помощью​ можно создать подобный​: Идёшь по этому​Кнопка (Button):​:​в Excel 2007 и​ на значения. В​ и разместить там​ пользовательских функций позволяет​ столбцам таблицы.​

Редактор макросов в Microsoft Excel

​ же серый кирпичик).​ путем внесения ручного​

Способ 4: элементы управления формы

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

  1. ​Любой выделенный в списке​​ новее — нажать​​ конце выводится окно​ наши макросы. Один​​ автоматизировать эти операции,​​В режиме Visual Basic​ Рисуем кнопку. Сразу​​ изменения в код,​​Когда все настройки выполнены,​ друг от друга,​ ко второму способу,​ ячейке.​ первому элементу, который​​ директорию жесткого диска,​​ программе.​ подробнейшее руководство по​ листе, удерживая левую​ макрос можно запустить​ кнопку​ сообщения (MsgBox).​

    Создание элемента управления формы в Microsoft Excel

  2. ​ модуль может содержать​ перекладывая монотонную однообразную​ — ALT+F11 в​ открывается окно для​ мы можем ускорить​
  3. ​ жмем на кнопку​ поэтому, ознакомившись с​ как в Excel​Если перед вами не​​ имеет вид кнопки.​​ где расположен рисунок,​Скачать последнюю версию​ работе с кодом​​ кнопку мыши. Автоматически​​ кнопкой​

Кнопка на листе в программе Microsoft Excel

​Запись макроса (Record macro)​С ходу ясно, что​ любое количество макросов.​ работу на плечи​ папке Modules вставляем​ назначения макроса: можно​ процесс. Добавляем команду​ «OK».​ каждым из них,​ сделать кнопку.​

​ стоит задача создания​

lumpics.ru

Три способа, как сделать кнопку в Excel

​После этого кликаем по​ который предназначен выполнять​ Excel​ RibbonX: Дж.Уокенбах. «Профессиональное​ появится окно, где​Выполнить​на вкладке​ вот так сразу,​ Доступ ко всем​ Excel. Другим поводом​ новый модуль Module1.​ сделать сразу, а​ «Application.ScreenUpdating = False».​После этого, все ваши​ вы сможете подобрать​

Автофигура

​Если вы думаете, что​ оригинальной кнопки и​ любому месту на​ роль кнопки. Выделяем​Как правило, подобная кнопка​ программирование на VBA»​ нужно выбрать макрос,​(Run)​Разработчик (Developer)​ без предварительной подготовки​ модулям осуществляется с​ для использования макросов​ Для этого делаем​ можно попозже.​ Она позволит сохранить​ действия в данной​ для себя самый​ создавать кнопку можно​

  1. ​ вы не хотите​
  2. ​ листе, которое считаем​
  3. ​ его наименование и​ призвана выступать в​ стр. 687, глава​ который должен запускаться​
  4. ​.​Затем необходимо настроить параметры​ и опыта в​ помощью окна Project​ в вашей работе​ по папке правый​Кнопка – автофигура. Переходим​ вычислительные мощности, а​ книге (файле) Excel​ оптимальный.​ только из штатных​
  5. ​ заморачиваться над сложным​ нужным. Сразу вслед​ жмем на кнопку​ качестве ссылки, инструмента​ 22. Как пример,​ при щелчке по​Кнопка​ записываемого макроса в​ программировании вообще и​ Explorer в левом​ может стать необходимость​

как в excel кнопку сделать

​ щелчок мышкой и​ на вкладку «Вставка».​ значит ускорить работу.​ будут записываться в​Автор: Вадим Матузок​ элементов и из​

  1. ​ ее оформлением то​ за этим там​«Вставить»​
  2. ​ для запуска процесса,​
  3. ​ покажу свою вкладку.​ нарисованной кнопке.​Параметры​ окне​ на VBA в​ верхнем углу редактора​ добавить в Microsoft​ выбираем: Insert-Module.​ В меню «Иллюстрации»​ Это достигается путем​ макрос до тех​Макросы программы Microsoft Excel​ действий можно назначать​ проще всего сделать​ отобразится элемент. Как​внизу окна.​ макроса и т.п.​ Создал буквально пару​Создание пользовательских функций или,​(Options)​
  4. ​Запись макроса​ частности, сложновато будет​ (если его не​ Excel недостающие, но​Делаем двойной щелчок по​
  5. ​ выбираем подходящую фигуру.​ отказа от обновления​ пор, пока вы​ позволяют значительно ускорить​ лишь гиперссылку, то​
  6. ​ ее, используя стандартный​ и в предыдущих​

как в excel сделать активные кнопки

​После этого изображение добавляется​ Хотя в некоторых​ недель назад:​ как их иногда​позволяет посмотреть и​:​ сообразить какие именно​ видно, нажмите CTRL+R).​ нужные вам функции.​ Module1 и вводим​ Рисуем. По готовой​ экрана во время​ сами не остановите​ работу с документами​ вы глубоко заблуждаетесь.​

Собственное изображение

​ набор инструментов в​ способах корректируем его​ на плоскость рабочего​ случаях, данный объект​Каждая кнопка запускает​ еще называют, UDF-функций​ отредактировать сочетание клавиш​Имя макроса​ команды и как​ Программные модули бывают​ Например функцию сборки​ в него следующий​ фигуре можно щелкнуть​ выполнения вычислительных действий.​ запись.​ в этом табличном​

  1. ​ Сейчас будет рассказано,​ программе. Такая кнопка​
  2. ​ местоположение и размеры.​ листа. Как и​ может являться просто​
  3. ​ конкретный макрос. Некоторые​ (User Defined Functions)​ для быстрого запуска​- подойдет любое​ надо вводить, чтобы​ нескольких типов для​
  4. ​ данных с разных​ код:Sub Макрос1()​ правой кнопкой мыши​ Чтобы возобновить обновление​Для примера, запишем простейшее​
  5. ​ редакторе. Это достигается​ как сделать кнопку​ будет служить своеобразной​
  6. ​Кликаем по получившемуся элементу​ в предыдущем случае,​ геометрической фигурой, и​ из предустановленных вкладок​ принципиально не отличается​

как сделать кнопку в excel и привязать ее к ячейке

​ макроса.​ имя на русском​ макрос автоматически выполнял​ разных ситуаций:​ листов на один​ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear​ и изменить оформление.​

Элемент ActiveX

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

  1. ​ его можно сжать,​ кроме визуальных целей​ можно вообще «убрать»​ от создания макроса​Кнопка​
  2. ​ или английском языке.​ все действия, которые,​
  3. ​Обычные модули​ итоговый лист, разнесения​ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«A2:A6»), _​Кнопка – рисунок. Переходим​ в его конце​ содержимого трёх ячеек​
  4. ​ действий, записанных в​ запуска макроса, при​ на другие внутренние​
  5. ​ кнопки мыши.​ перетягивая границы. Перемещаем​ не нести никакой​
  6. ​ для конкретной рабочей​ в обычном программном​Изменить​ Имя должно начинаться​
  7. ​ например, Вы делаете​- используются в​ данных обратно, вывод​SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal​ на вкладку «Вставка».​
  8. ​ пишем команду «Application.ScreenUpdating​ (=C4+C5+C6).​

как сделать кнопку в excel для запуска макроса

​ специальный код. Давайте​ том кнопка будет​ или внешние элементы.​Открывается окно редактора макросов.​ рисунок в ту​ пользы. Данный вариант,​ книги.​ модуле. Разница только​

Заключение

​(Edit)​ с буквы и​ для создания еженедельного​ большинстве случаев, когда​ суммы прописью и​With ActiveWorkbook.Worksheets(«Лист1»).Sort​ В меню «Иллюстрации»​ = True»​После этого, жмем на​ разберем, как создать​ не обычной, а​ Ну, а теперь​ Сюда можно записать​

​ область, где желаем,​

fb.ru

Создание макросов в программе Microsoft Excel

Запись макроса в Microsoft Excel

​ впрочем, встречается довольно​Serge_007​ в том, что​открывает редактор Visual​ не содержать пробелов​ отчета для руководства​ речь идет о​ т.д.​.SetRange Range(«A2:D6»)​ выбираем инструмент «Рисунок».​Добавим также команду «Application.Calculation​ кнопку «Остановить запись».​

​ макросы в программе​ в виде изображения,​

Способы записи макросов

​ перейдем непосредственно к​ любой макрос, который​

  • ​ чтобы размещался объект.​
  • ​ редко.​

​:​ макрос выполняет последовательность​ Basic (см. выше)​ и знаков препинания.​ компании. Поэтому мы​ макросах. Для создания​Макрос​.Apply​ Для выбора будут​ = xlCalculationManual» вначале​ Эта кнопка преобразовалась​ Excel, и как​ которое можно загрузить​

​ инструкции, как в​ вы хотите, чтобы​После этого к копке​Прежде всего, рассмотрим, как​Vostok​ действий с объектами​ и позволяет просмотреть​Сочетание клавиш​

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

​ переходим ко второму​ такого модуля выберите​- это запрограммированная​End With​

Включение макросов в Microsoft Excel

​ предложены варианты, которые​ кода, а в​ из кнопки «Запись​ их можно отредактировать.​ из интернета:​ Excel сделать кнопку:​

Включение записи макроса в Microsoft Excel

​ исполнялся при нажатии​ можно привязать гиперссылку,​ создать кнопку из​, cвои вкладки и​ книги (ячейками, формулами​ и отредактировать текст​- будет потом​ способу создания макросов,​ в меню​ последовательность действий (программа,​End Sub​ имеются на компьютере.​ конце кода дописываем​ макроса», после включения​

​Скачать последнюю версию​В программе перейдите на​Откройте программу.​ на данный объект.​ таким же образом,​ набора встроенных фигур​ группы можно создавать​ и значениями, листами,​ макроса на VBA.​ использоваться для быстрого​ а именно…​Insert — Module​

​ процедура), записанная на​’————————————————​Графический объект создан. Теперь​ «Application.Calculation = xlCalculationAutomatic».​ записи.​ Excel​ вкладку «Вставка».​Перейдите на вкладку «Вставка».​ Например, можно записать​ как это было​ Excel.​ и без Джона​

​ диаграммами и т.д.),​Чтобы не запоминать сочетание​ запуска макроса. Если​Макрорекордер​. В появившееся окно​ языке программирования Visual​Sub Макрос2()​

​ нужно сделать его​ Этим мы вначале​Для того, чтобы проверить,​

Настройки записи макроса в Microsoft Excel

​Макрос можно записать двумя​Нажмите по кнопке «Рисунок»,​В группе инструментов «Иллюстрации»​ макрос преобразования текстового​ показано в предыдущем​Производим перемещение во вкладку​Начиная с версии​ а пользовательская функция​

​ клавиш для запуска​ забудете сочетание или​- это небольшая​ нового пустого модуля​

Формула в Microsoft Excel

​ Basic for Applications​ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear​ «рабочим».​ макроса отключаем автоматический​ как работает записанный​ способами:​

Остановка записи макроса в Microsoft Excel

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

​ которая располагается в​ отыщите кнопку «Фигуры»​ выражения в числовой​ способе, а можно​«Вставка»​ Excel 2010 это​ — только с​ макроса, лучше создать​

Переход к запуску макроса в Microsoft Excel

​ вообще его не​ программа, встроенная в​ можно вводить команды​ (VBA). Мы можем​ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«B2:B6»), _​​ пересчет результата после​

Выбор макроса в Microsoft Excel

​ макрос, кликаем в​автоматически;​ группе инструментов «Иллюстрации».​ и нажмите по​ формат, как на​ добавить макрос. В​. Щелкаем по значку​ стало очень просто:)​ теми значениями, которые​ кнопку и назначить​ введете, то макрос​ Excel, которая переводит​

​ на VBA, набирая​ запускать макрос сколько​SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal​К примеру, написали макрос​

Макрос выполнен в Microsoft Excel

Редактирование макроса

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

Переход к изменению макроса в Microsoft Excel

​«Фигуры»​Vostok​ мы передадим ей​ ей нужный макрос.​

Microsoft Visual Basic в Microsoft Excel

​ можно будет запустить​ любое действие пользователя​ их с клавиатуры​ угодно раз, заставляя​With ActiveWorkbook.Worksheets(«Лист1»).Sort​ для выполнения определенной​ а в конце​ инструментов «Код» по​Воспользовавшись первым вариантом, вы​ «Проводник». В нем​Появится меню, в котором​ того, как макрос​ правой кнопкой мыши​, который размещен на​: И Эта великолепная​

​ как аргументы (исходные​ Кнопка может быть​ через меню​

​ на язык программирования​
​ или копируя их​

​ Excel выполнять последовательность​.SetRange Range(«A2:D6»)​ задачи. Чтобы запускать​

Изменение макроса в Microsoft Excel

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

​ нескольких типов:​Сервис — Макрос -​ VBA и записывает​ из другого модуля,​ любых нужных нам​.Apply​ его, нужно каждый​ Таким образом, Excel​ жмем сочетание клавиш​ действия в программе​ папку с картинкой​ фигуры. Вам необходимо​ кнопку закрытия окна​ появившемся контекстном меню​ инструментов​ только для этой​Чтобы создать пользовательскую функцию​Кнопка на панели инструментов​ Макросы — Выполнить​ получившуюся команду в​ с этого сайта​

​ действий, которые нам​End With​ раз заходить в​ подсчитает результат только​ Alt+F8.​ Microsoft Excel, которые​ кнопки, выделить ее​ выбрать ту, которая​ в его правом​ выбираем пункт​«Иллюстрации»​ конкретно взятой книги?​ для расчета, например,​ в Excel 2003​(Tools — Macro -​ программный модуль. Если​ или еще откуда​

Изменение кода в Microsoft Visual Basic в Microsoft Excel

Написание кода макроса с нуля

​ не хочется выполнять​End Sub​ меню «Разработчик». Что​ один раз, а​После этого, открывается окно​ выполняете в данный​ и нажать «Вставить».​ и будет служить​ верхнем углу.​«Назначить макрос…»​. Раскрывается список всевозможных​Serge_007​

Переход к ручному созданию макроса в Microsoft Excel

​ налога на добавленную​ и старше​ Macros — Run)​

Окно редактора VBE в Microsoft Excel

​ мы включим макрорекордер​ нибудь:​

​ вручную.​’————————————————​ неудобно. Гораздо проще​ не будет его​ со списком записанных​ момент времени. Потом,​Выбранное изображение появится на​ кнопкой для перехода​Теперь макрос будет привязан​.​ фигур. Выбираем ту​: Нет, конечно.​ стоимость (НДС) откроем​Откройте меню​или с помощью​

​ на запись, а​

lumpics.ru

Как сделать кнопку в Excel с помощью макроса и гиперссылки

​Модуль Эта книга​В принципе, существует великое​Sub Макрос3(​ создать «рабочую» кнопку.​ постоянно пересчитывать, чем​ макросов. Ищем макрос,​ можно будет воспроизвести​ листе программы. Измените​ по гиперссылке. В​ к объекту.​

Как сделать кнопку на листе Excel

​Открывается окно управление макросами.​ фигуру, которая, как​Лента — это​ редактор VBA, добавим​Сервис — Настройка​

​ кнопки​

  1. ​ затем начнем создавать​- также виден​ множество языков программирования​) ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear​Если мы использовали элемент​ сэкономит время.​ который мы записали,​ эту запись. Данный​ его расположение и​ данном случае мы​Следующий способ очень похож​Кнопка 1.
  2. ​ В нем нужно​ вы считаете, подойдет​ часть Application​ новый модуль через​(Tools — Customize)​Макросы (Macros)​ свой еженедельный отчет,​ в левом верхнем​ (Pascal, Fortran, C++,​ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«C2:C6»), _​ ActiveX, то:​Продвинутые пользователи могут выполнять​ выделяем его, и​Кнопка 2.
  3. ​ способ очень легкий,​ размер по своим​ будем использовать прямоугольник​ по технологии выполнения​ выделить тот макрос,​ более всего на​Vostok​ меню​Кнопка 3.
  4. ​и перейдите на​на вкладке​ то макрорекордер начнет​ углу редактора Visual​ C#, Java, ASP,​SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal​включаем режим конструктора (он​

Кнопка 4.

​ не только редактирование​ жмем на кнопку​ и не требует​

​ предпочтениям.​

Как в Excel сделать кнопку с макросом

​ со скругленными углами.​ на предыдущий вариант.​ который вы желаете​ роль кнопки. Например,​: А моя вкладка​Insert — Module​ вкладку​Разработчик (Developer)​

​ записывать команды вслед​ Basic в окне,​

Макрос 1.

​и введем туда​Команды (Commands)​или нажав ALT+F8.​ за каждым нашим​ которое называется Project​ всех программ пакета​.SetRange Range(«A2:D6»)​ «Разработчик»);​ макросов, но и​

Назначить макрос.

Другие варианты использования кнопок

​Можно поступить ещё проще,​ применение его на​ выберите действие «Назначить​На листе таблицы появится​ добавление кнопки через​ кнопки. Этот макрос​ быть прямоугольник со​ Конкретно Взятой Книги​

​ текст нашей функции:​. В категории​Сохранить в…​ действием и, в​

Гиперссылка.

​ Explorer. В этот​ Microsoft Office стандартом​.Apply​щелкаем два раза кнопкой​ записывать код макросов​ и не вызывать​

Вставка гиперссылки.

​ практике довольно ограничено.​ макрос».​ выбранный элемент. Изначально​ элемент управления формы.​ должен быть уже​ сглаженными углами.​ и не «мозолит»​

​Обратите внимание, что в​Макросы​- здесь задается​ итоге, мы получим​ модуль обычно записываются​ является именно встроенный​End With​

​ мыши по созданной​
​ с нуля. Для​
​ даже окно выбора​

​Ручная запись макросов, наоборот,​Появится окно с перечнем​ он вряд ли​

Как сделать кнопку сортировки в Excel для таблиц

​ Для использования этого​ записан в книге.​После того, как произвели​

Какого товара больше продано по месяцам.

  1. ​ глаза при открытии​ отличие от макросов​легко найти веселый​ место, куда будет​ макрос создающий отчет​Авто-фигуры как заголовки.
  2. ​ макросы, которые должны​ язык VBA. Команды​End Sub​ кнопке – откроется​ того, чтобы приступить​ макросов. Мы же​ требует знаний программирования,​ макросов. Вам остается​Module1.
  3. ​ будет подходящей формы,​ метода также требуется​ Следует выделить его​ нажатие, перемещаем его​
    ​ других книг. И​
    ​ функции имеют заголовок​
    ​ желтый «колобок» -​
    ​ сохранен текст макроса,​
    ​ как если бы​
    ​ выполнятся при наступлении​
    ​ этого языка понимает​
    ​’————————————————​
    ​ режим Visual Basic​
    ​ к этому, нужно​
    ​ помним, что записали​
    ​ так как код​
    ​ лишь выбрать нужный​
    ​ поэтому переместите его​
    ​ включение режима разработчика.​
    ​ наименование и нажать​
    ​ в ту область​
    ​ это очень Удобно!​
    ​Function​
    ​Настраиваемую кнопку​
    ​ т.е. набор команд​
    ​ он был написан​
    ​ каких-либо событий в​
    ​ любое офисное приложение,​
    ​Sub Макрос4()​
    ​ с автоматически созданным​
    ​ нажать на кнопку​
    ​ сочетание «горячих клавиш»​
    ​ набирается вручную с​
    ​ и нажать кнопку​
    ​ в нужную область​
    ​Переходим во вкладку​
    ​ на кнопку​
    ​ листа (ячейку), где​
    ​ Да, и потом​
    ​вместо​
    ​(Custom button)​
    ​ на VBA из​ программистом. Такой способ​ книге (открытие или​ будь то Excel,​
  4. ​ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear​ пустым каркасом;​ «Visual Basic», которая​ для быстрого вызова​ клавиатуры. Но, грамотно​

​ «ОК».​ листа (в какую-нибудь​«Разработчик»​«OK»​ желаем, чтобы находилась​ создана она средствами​Sub​:​ которых и состоит​ создания макросов не​ сохранение книги, печать​ Word, Outlook или​ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«D2:D6»), _​вписываем между двумя строками​ расположена в самом​ макроса. В нашем​ написанный таким образом​

​После этого интерактивная кнопка​

​ ячейку) и измените​и кликаем по​.​ кнопка, и двигаем​ RibbonX и VBA.​и непустой список​Перетащите ее к себе​

exceltable.com

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

Введение

​ макрос.:​ требует знаний пользователя​ файла и т.п.):​ Access.​SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal​ команду для вызова​ начале ленты разработчика.​ случае, это Ctrl+М.​ код, может значительно​ будет создана, соответственно,​ размер, используя специальные​ знакомой нам кнопке​Теперь при нажатии на​ границы вглубь, чтобы​ (Согласно теме данной​ аргументов (в нашем​ на панель инструментов​Эта книга​ о программировании и​Модуль листа​Для ввода команд и​With ActiveWorkbook.Worksheets(«Лист1»).Sort​ макроса.​После этого, открывается знакомое​ Набираем данную комбинацию​ ускорить выполнение процессов.​ на нее вы​ маркеры на четырех​«Вставить»​ объект будет запускаться​ объект принял нужный​ ветки — «Вопросы​ случае это​ и затем щелкните​- макрос сохраняется​

​ VBA и позволяет​​- доступен через​ формирования программы, т.е.​.SetRange Range(«A2:D6″)​Для других графических объектов​ нам окно редактора​ на клавиатуре, после​Прежде, чем начать автоматическую​ можете назначить и​ сторонах прямоугольника.​, размещенной на ленте​ выбранный макрос.​ нам размер.​ по VBA»).​

​Summa​ по ней правой​ в модуль текущей​ пользоваться макросами как​ Project Explorer и​ создания макроса необходимо​.Apply​ макрос назначается так​ VBE.​ чего макрос запускается.​ запись макросов, нужно​ гиперссылку, как это​После изменения размера и​ в группе​

Способ 1. Создание макросов в редакторе Visual Basic

​Урок:​Теперь следует добавить конкретное​Serge_007​). После ввода кода​ кнопкой мыши. В​ книги и, как​ неким аналогом видеозаписи:​

  • ​ через контекстное меню​ открыть специальное окно​End With​ же. Процедура еще​​Программист пишет там код​Как видим, макрос выполнил​ ​ включить макросы в​ было показано в​​ установки в ячейку​
  • ​«Элементы управления»​Как создать макрос в​ действие. Пусть это​: Вряд ли я​​ наша функция становится​​ контекстом меню можно​​ следствие, будет выполнятся​ включил запись, выполнил​ листа, т.е. правой​ — редактор программ​​End Sub Примечание.​ проще. Нужно щелкнуть​ макроса вручную.​​ в точности все​​ программе Microsoft Excel.​ первом способе.​ нашей своеобразной кнопке​. Открывается список. В​ Excel​ будет переход на​ когда-либо смогу оценить​​ доступна в обычном​ ​ назначить кнопке макрос,​

    Как создать кнопку вȎxcel для макроса​ только пока эта​

​ операци, перемотал пленку​ кнопкой мыши по​ на VBA, встроенный​ Красным текстом отмечены​ правой кнопкой мыши​Как видим, макросы в​ те действия, которые​Далее, переходим во вкладку​

Как создать кнопку вȎxcel для макроса

​Мы уже разобрали два​ можно задать действие,​ нем нужно выбрать​Наиболее функциональной кнопку получится​ другой лист при​ удобство вкладки только​ окне Мастера функций​ выбрать другой значок​ книга открыта в​ и запустил выполнение​ ярлычку листа -​ в Microsoft Excel.​ отличающиеся параметры для​ по нарисованной кнопке​ Microsoft Excel могут​ были записаны ранее.​ «Разработчик». Кликаем по​ способа, как сделать​ которое будет происходить​ первый же элемент,​ создать в том​

​«Элементы управления формы»​ элемент ActiveX. Посмотрим,​ кнопкой мыши. В​

Как создать кнопку вȎxcel для макроса

​ 08:50, в сообщении​Определенные пользователем (User Defined)​ 2007 и новее​​ в шаблон, на​​ есть свои плюсы​

  • ​ которые должны выполняться​ в меню​​ – Макрос1, а​​С помощью кнопок в​ большинстве случаев, для​ В открывшемся окне​ инструментов «Код».​ от предыдущих:​ по прямоугольнику.​. Данный объект визуально​
  • ​ как это делается​ контекстном меню, которое​​ № 8200?’200px’:»+(this.scrollHeight+5)+’px’);»>не «мозолит»​​:​
  • ​Щелкните правой кнопкой мыши​​ основе которого создается​​ и минусы:​​ при наступлении определенных​​Сервис — Макрос -​ для «Май» –​ Excel можно не​ этого больше подходят​ выбираем нужный макрос,​Открывается окно настройки записи​Включите панель «Разработчика». Для​Выберите пункт «Гиперссылка».​ выглядит точно так​ на практике.​ активируется вслед за​ глаза при открытии​После выбора функции выделяем​ по панели быстрого​ любая новая пустая​

​Макрорекордер записывает только те​ событий на листе​ Редактор Visual Basic​ Макрос2 и т.д.​ только выполнять созданные​ макросы, код которых​ и кликаем по​ макроса. Тут можно​ этого в параметрах​В появившемся окне вам​ же, как и​Для того чтобы иметь​ этим, выбираем позицию​ других книгСобственно говоря,​ ячейки с аргументами​ доступа в левом​ книга в Excel,​ действия, которые выполняются​ (изменение данных в​

Способ 2. Запись макросов макрорекордером

​(Toos — Macro -​​Все теперь достаточно только​ макросы, но и​ написан вручную, а​ кнопке «Изменить».​ указать любое имя​ в разделе «Настройка​ нужно выбрать один​ аналогичный элемент ActiveX,​ возможность работать с​«Гиперссылка»​ вкладка на ленте​ (с суммой, для​ верхнем углу окна​ т.е. макрос будет​ в пределах окна​ ячейках, пересчет листа,​ Visual Basic Editor)​ кликнуть по заголовку​ переходить в определенную​ не автоматически записанные​Открывается Microsoft Visual Basic​ макроса, если установленное​ ленты» поставьте галочку​ из четырех типов​ о котором мы​ элементами ActiveX, прежде​.​ визуально — это​ которой надо посчитать​ Excel и выберите​ содержаться во всех​ Microsoft Excel. Как​ копирование или удаление​.​ и таблица отсортирует​

  • ​ ячейку, другой документ,​ действия. Кроме того,​ (VBE) – среда,​ по умолчанию вас​ напротив пункта «Разработчик».​ ссылки. Вы можете​ говорили чуть выше.​ всего, нужно активировать​
  • ​В открывшемся окне создания​ одно только название​ НДС) как в​ команду​ новых книгах, создаваемых​ только вы закрываете​ листа и т.д.)​В новых версиях (Excel​ данные относительно определенного​ на другой лист.​ код макроса можно​ где происходит редактирование​
  • ​ не устраивает. Главное,​Перейдите на только что​ сделать ссылку на​Объект появляется на листе.​ вкладку разработчика. Дело​ гиперссылки переходим во​ вкладки. Чем и​ случае с обычной​Настройка панели быстрого доступа​ на данном компьютере​ Excel или переключаетесь​Обычный макрос, введенный в​ 2007 и новее)​ столбца. Для удобства​ Рассмотрим подробнее.​

​ оптимизировать через редактор​

  • ​ макросов.​ чтобы имя это​ добавленную вкладку «Разработчик».​​ внешний файл или​ Корректируем его размеры​ ​ в том, что​ вкладку​
  • ​ как оно может​ функцией:​ (Customise Quick Access​​ начиная с текущего​​ в другую программу​​ стандартный модуль выглядит​

​ для этого нужно​ столбец «Наименование» Макрос1​Нарисуем графический объект и​​ VBE для ускорения​​Запись каждого макроса начинается​

Как создать кнопку вȎxcel для макроса

  • ​ начиналось с буквы,​​Нажмите по кнопке «Вставить»​ интернет-ресурс, выбрав пункт​ и место расположения,​ по умолчанию она​«Местом в документе»​ «мозолить» глаза -​Макрописец​
  • ​ Toolbar)​​ момента​ — запись останавливается.​ примерно так:​ сначала отобразить вкладку​ сортирует по возрастанию​ выделим его. На​ процесса выполнения задачи.​ с команды Sub,​​ а не с​ и выберите из​ ​ «файлом, веб-страницей»; можете​ как уже не​​ отключена. Поэтому, если​. Выбираем тот лист,​​ мне тоже непонятно​​: Здравствуйте.​​:​​Личная книга макросов​
  • ​Макрорекордер может записать только​​Давайте разберем приведенный выше​Разработчик (Developer)​ благодаря параметру Order:=xlAscending.​ вкладке «Вставка» найдем​Автор: Максим Тютюшев​ а заканчивается командой​ цифры. Также, в​
    • ​ выпадающего меню в​​ сделать ссылку на​ раз делали ранее.​ вы её до​ который считаем нужным,​Цитата​Много читал на​Затем в открывшемся окне​
    • ​- это специальная​​ те действия, для​ в качестве примера​. Выбираем​ Во всех остальных​ кнопку «Гиперссылка».​Кнопка в Excel как​ End Sub. Сразу​ названии не должно​ разделе «Элементы ActiveX»​ место в документе,​После этого назначаем для​
    • ​ сих пор ещё​​ и жмем на​Vostok, 27.06.2015 в​ эту тему -​​ выберите категорию​​ книга Excel с​ которых есть команды​ макрос​​Файл — Параметры -​​ столбцах присвоены макросы​После нажатия открывается окно​ ссылка на ячейку,​ же после команды​ быть пробелов. Мы​ первый пункт, который​

​ выбрав одноименный пункт;​ созданного объекта макрос,​ не включили, то​ кнопку​​ 08:50, в сообщении​ ​ везде говорится как​​Макросы​

Запуск и редактирование макросов

​ именем​ меню или кнопки​Zamena​ Настройка ленты (File​​ (2,3,4) с параметром​​ для создания связи​​ какой-либо инструмент, созданный​​ Sub указывается имя​ оставили название по​ имеет вид кнопки.​​ можно также сослаться​ как это было​ ​ переходите во вкладку​«OK»​​ № 8200?’200px’:»+(this.scrollHeight+5)+’px’);»>…создана она​

Как создать кнопку вȎxcel для макроса

  • ​ сделать кнопку конструктором​и при помощи​Personal.xls​​ в Excel. Программист​ ​:​​ — Options -​
  • ​ Order:=xlDescending, который задает​​ кнопки с файлом,​ ​ макрос значительно упрощает​​ макроса. Оператор «Range(«…»).Select»​ умолчанию – «Макрос1».​Кликните по любому месту​ на другой документ​
  • ​ показано в​​«Файл»​ ​.​​ средствами RibbonX и​ и как добавить​ кнопки​, которая используется как​ же может написать​

Создание кнопки для запуска макросов

​Любой макрос должен начинаться​ Customize Ribbon)​ тип сортировки по​ веб-страницей, электронной почтой,​ работу в программе.​ указывает выбор ячейки.​Тут же, при желании,​

​ на листе для​ и на электронную​Способе 2​

​, а затем перемещайтесь​​Теперь при клике по​ ​ VBAА штатная создается​​ кнопку в панель​Добавить (Add)​​ хранилище макросов. Все​​ макрос, который делает​​ с оператора​​и включаем в​ убыванию. Чтобы видно​​ новым документом, местом​ ​ Чаще всего это​​ Например, при команде​

Как создать кнопку вȎxcel для макроса

​ можно установить сочетание​ вставки кнопки.​ почту. В последнем​или присваиваем гиперссылку,​ в раздел​ созданному нами объекту​ средствами Excel. Процитируйте,​ быстрого доступа. А​перенесите выбранный макрос​

Как создать кнопку вȎxcel для макроса

​ макросы из​ то, что Excel​Sub​

​ правой части окна​ было, в каком​ в текущем документе.​ графический объект с​ «Range(«C4»).Select» выбирается ячейка​ клавиш, при нажатии​​При желании можете изменить​ случае после нажатия​ как было описано​​«Параметры»​

Как создать кнопку вȎxcel для макроса

​ будет осуществляться перемещение​ пожалуйста, текст топика,​​ вот про ленту​​ в правую половину​Personal.xls​​ никогда не умел​​, за которым идет​ флажок​ месяце было больше​Достаточно выбрать необходимый вариант​

Как создать кнопку вȎxcel для макроса

​ назначенным макросом или​

​ C4. Оператор «ActiveCell.FormulaR1C1»​ на которые макрос​ месторасположение и размер​ по кнопке будет​ в​.​ на выбранный лист​

  • ​ в котором автор​ — ничего.Можно ли​ окна, т.е. на​​загружаются в память​​ (сортировку по цвету,​​ имя макроса и​Разработчик (Developer)​ продано товара.​ и прописать к​
  • ​ гиперссылкой. Рассмотрим, как​ используется для записи​ будет запускаться. Первой​​ элемента.​​ создано новое письмо​​Способе 1​​В активировавшемся окне параметров​

​ документа.​​ просит решить задачу​

Как создать кнопку вȎxcel для макроса

​ в Excel 2010​ панель быстрого доступа:​ при старте Excel​ например или что-то​ список аргументов (входных​. Теперь на появившейся​Скачать пример кнопки сортировки​ нему путь. Этот​

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

​ сделать такую кнопку.​ действий в формулах,​ клавишей обязательно должна​Для добавления действия на​ на указанный адрес​.​ перемещаемся в раздел​Урок:​ средствами RibbonX и​ добавить кнопку на​Кнопка на листе​ и могут быть​ подобное).​ значений) в скобках.​ вкладке нам будут​Примечание. Такие простые макросы​ способ не требует​Суть работы: создать графический​ и для других​ быть клавиша Ctrl,​

​ кнопку кликните по​ почты.​Как видим, в Экселе​«Настройка ленты»​Как сделать или удалить​ VBA​ ленту, и если​​Этот способ подходит для​​ запущены в любой​Если во время записи​

Как создать кнопку вȎxcel для макроса

​ Если аргументов нет,​ доступны основные инструменты​ можно создать в​​ написания макросов и​​ объект и назначить​​ расчетов.​​ а вторую клавишу​ ней дважды левой​Мы покажем пример создания​​ создать функциональную кнопку​​. В правой части​ гиперссылки в Excel​Цитата​ да — то​ любой версии Excel.​​ момент и в​​ макроса макрорекордером вы​​ то скобки надо​​ для работы с​

Как создать кнопку вȎxcel для макроса

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

Как создать кнопку вȎxcel для макроса

planetaexcel.ru

Вставка кнопки макроса на ленту в Excel 2010 (Макросы/Sub)

​ не так сложно,​​ окна устанавливаем галочку​
​В качестве кнопки можно​Vostok, 27.06.2015 в​ как?​ Мы добавим кнопку​ любой книге.​ ошиблись — ошибка​ оставить пустыми.​ макросами, в том​ программирования или без​ возможности.​ или гиперссылку. Рассмотрим​ Для этого, в​ Например, мы, в​Откроется окно с полем​

​ место в документе.​​ как это может​ около пункта​
​ также использовать сторонний​ 08:50, в сообщении​Serge_007​ запуска макроса прямо​После включения записи и​

​ будет записана. Однако​​Любой макрос должен заканчиваться​ числе и нужная​ написания VBA-кода, с​Подобные задачи можно выполнять​
​ подробнее.​ макрос допишем выражение:​ качестве примера, установили​ для ввода макроса.​ Кликаем по одноименной​ показаться неопытному пользователю.​«Разработчик»​

​ рисунок.​​ № 8200?’200px’:»+(this.scrollHeight+5)+’px’);»>Согласно теме​: Редкий случай, исключение​ на рабочий лист,​ выполнения действий, которые​ смело можете давить​ оператором​ нам кнопка​ помощью инструмента «Запись​ и с помощью​Способы создания графического объекта:​Range(«C3»).Select​
​ клавишу М.​ В него вы​ кнопке.​ К тому же​, если она отсутствует.​Находим стороннее изображение, например,​

​ данной ветки -​​ из правил​​ как графический объект.​​ необходимо записать, запись​ на кнопку отмены​End Sub​;)
​Редактор Visual Basic​ макроса».​ макросов. Например, чтобы​


​Кнопка – элемент ActiveX.​​ActiveCell.FormulaR1C1 = «11»​Далее, нужно определить, где​ можете прописать любое​В соответствующем меню вы​

​ данную процедуру можно​​ Далее выполняем щелчок​
​ в интернете, и​ «Вопросы по VBA»Насчет​

​Этот топик невозможно​​ Для этого:​ можно остановить командой​ последнего действия (Undo)​.​(Visual Basic Editor)​Всем нам приходится -​ при нажатии, пользователь​ Переходим на вкладку​Выражение «ActiveCell.FormulaR1C1 = «=R[-3]C+R[-2]C+R[-1]C»»​ будет храниться макрос.​ необходимое действие.​ можете указать адрес​ выполнить с помощью​

​ по кнопке​​ скачиваем его себе​ расположения темы -​ поделить на категории,​В Excel 2003 и​:D
​Остановить запись​​ — во время​Все, что находится между​:​ кому реже, кому​ попадал в определенную​ «Разработчик». Нажимаем кнопку​ заменим на «ActiveCell.FormulaR1C1​ По умолчанию, он​После ввода макроса закройте​ ячейки или же​ четырех различных способов​«OK»​
​ на компьютер.​​ прочитайте мой комментарий​ поэтому дубль темы​ старше — откройте​(Stop Recording)​ записи макроса макрорекордером​Sub​К сожалению, интерфейс редактора​ чаще — повторять​ ячейку (М6), прописываем​ «Вставить». Открывается меню​ = «= R[-4]C+R[-3]C+R[-2]C+R[-1]C»».​
​ будет храниться в​​ окно.​ определить другое место​ на свое усмотрение.​в нижней части​Открываем документ Excel, в​ к топику​ не удаляется, а​ панель инструментов​:)

excelworld.ru

​.​

Это глава из книги Билла Джелена Гуру Excel расширяют горизонты: делайте невозможное с Microsoft Excel.

Задача: в предыдущей заметке мы рассказали, как запускать макросы клавиатурными сокращениями. Можно ли для этой цели использовать кнопки на листе?

Решение: существует множество способов запустить макрос кнопкой (рис. 1).

Рис. 1. Вы можете запустить макрос с помощью любого из этих элементов

Рис. 1. Вы можете запустить макрос с помощью любого из этих элементов

Скачать заметку в формате Word или pdf, примеры в формате Excel (с кодом VBA)

Способ 1. Элемент управления формы Кнопка

В Excel 2007 или более поздней версии перейдите на вкладку РАЗРАБОТЧИК. В области Элементы управления кликните на кнопке Вставить, в раскрывающемся списке выберите значок Кнопка (рис. 2). Перетащите значок на лист, и нарисуйте кнопку. Когда вы закончите отрисовывать кнопку, появится диалоговое окно Назначить макрос объекту. Выберите макрос и нажмите Ok.

Рис. 2. Вставка кнопки, как элемента управления формы

Рис. 2. Вставка кнопки, как элемента управления формы

Примечание. Если вы не видите вкладку РАЗАБОТЧИК, пройдите по меню ФАЙЛ –> Параметры. Перейдите на вкладку Настроить ленту, и в правой части окна Параметры ExcelОсновные вкладки поставьте галочку напротив Разработчик.

Кнопка по умолчанию имеет название Кнопка 1. Чтобы изменить имя: нажмите Ctrl и кликните на кнопке (это позволит сделать кнопку активной без запуска макроса). Удалите текст с названием кнопки и наберите новое название. Вы можете изменить тип и размер шрифта, выравнивание и цвет текста. Если в будущем вы захотите изменить макрос, назначенный кнопке, кликните на ней правой кнопкой мыши и выберите опцию Назначить макрос.

Способ 2. Кнопка ActiveX

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

Перейдите на вкладку РАЗРАБОТЧИК. В области Элементы управления кликните кнопку Вставить, и в раскрывшемся списке выберите значок Кнопка (рис. 3). Нажмите на пиктограмму Кнопка и перетащите ее на рабочий лист. Обратите внимание, что вы находитесь в режиме конструктора.

Рис. 3. Вставка кнопки, как элемента ActiveX

Рис. 3. Вставка кнопки, как элемента ActiveX

Кликните на Кнопке правой кнопкой мыши, и выберите опцию Свойства. Появится окно Properties (свойства, рис. 4). Находим строку для заголовка – Caption. Удалите текст CommandButton3 [1] и наберите Выполнить! Кнопка ActiveX. Вы также можете заменить шрифт Arial на Calibri. Вы также можете изменить внешний вид кнопки с помощью таких свойств, как BackColor и ForeColor; можете добавить изображение на кнопку (свойство Picture) и т.д. Эти особенности делают элементы управления ActiveX намного более гибкими, чем элементы управления формы. Закройте окно свойств, кликнув на крестик в правом верхнем углу.

Рис. 4. Свойства Кнопки ActiveX

Рис. 4. Свойства Кнопки ActiveX

Оставаясь в режиме конструктора, кликните правой кнопкой мыши, и выберите опцию Исходный текст. Вы перейдете в окно редактора VBA в процедуру Private Sub CommandButton3_Click (рис. 5). В настоящий момент процедура не выполняет никакой код (она пустая). Обратите внимание, что код «живет» не в отдельном модуле, а в листе книги.

Рис. 5. Редактирование кода VBA, ассоциированного с Кнопкой ActiveX

Рис. 5. Редактирование кода VBA, ассоциированного с Кнопкой ActiveX

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

Рис. 6. Процедуру Private Sub CommandButton3_Click будет исполнять макрос TestMacro

Рис. 6. Процедура Private Sub CommandButton3_Click будет исполнять макрос TestMacro

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

Примечание. Сам макрос TestMacro предельно прост. Он выводит на экран окно Макрос выполнен. При этом код макроса, как и положено, размещен в модуле VBA.

Sub TestMacro()

MsgBox "Макрос выполнен"

End Sub

Способ 3. Любая фигура, картинка, рисунок SmartArt, Clip Art

Поместите объект на лист Excel. Щелкните правой кнопкой мыши на объекте и выберите команду Назначить макрос. В окне Назначить макрос объекту выберите макрос и нажмите Ok.

Способ 4. С помощью гиперссылки

Настройка макроса для запуска с помощью гиперссылки довольно сложна, но интересна. Для начала введите какой-нибудь текст в ячейку — например, Запуск макроса гиперссылкой. Затем на вкладке ВСТАВКА выберите команду Гиперссылка, и в окне Изменение гиперссылки введите адрес ячейки, в которой введен текст. В нашем примере – это В28. Это позволит при нажатии гиперссылки остаться в ячейке.

Рис. 7. Замкните гиперссылку саму на себя

Рис. 7. Замкните гиперссылку саму на себя

Перейдите в редактор VBA. В окне проекта (VBAProject) найдите строку с листом Excel, на котором находится гиперссылка. В нашем примере лист называется Sheet1 (Рис. 1). Кликните на этой строке правой кнопкой мыши, и выберите команду View Code (рис. 8).

Рис. 8. Код для перехвата нажатия гиперссылки должен быть расположен на листе

Рис. 8. Код для перехвата нажатия гиперссылки должен быть расположен на листе

Откроется панель кода для листа Sheet1 (Рис. 1). Если вы ранее выполняли действия, описанные выше в разделе Способ 2. Кнопка ActiveX для запуска макроса, то вверху окна будет размещено три строчки кода (см. рис. 6). Если вы не делали этого, окно будет пустым. В любом случае, воспользуйтесь двумя выпадающими меню в верхней части окна. В левом списке выберите Worksheet, в правом – FollowHyperlink. У вас появится заготовка процедуры Worksheet_FollowHyperlink перехватывающей событие Нажатие гиперссылки (рис. 9).

Рис. 9. Настройка заготовки кода путем выбора объекта – Worksheet и события – FollowHyperlink

Рис. 9. Настройка заготовки кода путем выбора объекта – Worksheet и события – FollowHyperlink

Каждый раз, когда кто-то нажмет вашу гиперссылку, запустится эта процедура. Целевая переменная процедуры – ByVal Target As Hyperlink – обеспечит срабатывание процедуры только когда нажата ячейка с целевым текстом. Если на странице только одна гиперссылка, вы можете ограничиться простым кодом:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

TestMacro

End Sub

Если гиперссылок несколько, вы можете использовать свойство Target.TextToDisplay, чтобы различить гиперссылки:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

Select Case Target.TextToDisplay

Case "Run Report 2"

TestMacro

Case "Run Report 2"

TestMacro2

Case "Run Report 3"

TestMacro3

End Select

End Sub

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

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

Select Case Target.TextToDisplay

Case "A-Z"

SortMacroAscending

Target.TextToDisplay = "Z-A"

Case "Z-A"

SortMacroDescending

Target.TextToDisplay = "A-Z"

End Select

End Sub

Резюме: запуск макроса кнопкой может быть выполнен с помощью элементов управления формы, элементов ActiveX, фигуры SmartArt, гиперссылки и др.

[1] В процессе написания заметки я тестировал те или иные возможности, поэтому моя кнопка имеет номер 3. Если вы выполняете операцию создания Кнопки ActiveX впервые, ваша Кнопка будет иметь имя CommandButton1

Содержание:

  1. Вставьте фигуру и назначьте ей макрос
  2. Сохранение формы видимой при скрытии / изменении размера строк / столбцов
  3. Назначение макроса кнопке управления формой
  4. Назначение макроса кнопке управления ActiveX

Хотя есть много разных способов запустить макрос в Excel, ни один из этих методов не может быть таким простым и удобным, как нажатие кнопки.

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

В этом уроке я покажу вам несколько способов вставить кнопку в Excel, а затем назначить макрос этой кнопке (или фигуре). После этого, как только пользователь нажимает кнопку, выполняется макрос VBA-код.

Для этого урока я буду использовать приведенный ниже макрокод VBA (который просто выбирает ячейку A1 на активном листе, вводит в нее текст «Доброе утро» и окрашивает ее в красный цвет).
Sub GoodMorning () с ActiveSheet.Range ("A1") .Value = "Доброе утро" .Interior.Color = vbRed Конец с концом Sub
Приведенный выше код VBA помещается в обычный модуль редактора VB.

Теперь давайте перейдем к делу и посмотрим, как можно назначить этот макрос кнопке или фигуре в Excel!

Вставьте фигуру и назначьте ей макрос

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

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

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

Ниже приведены шаги для вставки фигуры в Excel:

  1. Щелкните вкладку Вставка
  2. В группе иллюстраций нажмите Фигуры
  3. В параметрах фигур выберите параметр «Прямоугольник». Вы заметите, что ваш курсор изменится на значок плюса
  4. Щелкните в любом месте листа. Это вставит прямоугольную форму на лист.
  5. Измените размер прямоугольника и отформатируйте его (при желании задайте рамку, цвет, оттенок).

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

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

Теперь давайте посмотрим, как назначить макрос этой фигуре.

  1. Щелкните правой кнопкой мыши фигуру, которой вы хотите назначить макрос
  2. В появившемся меню выберите «Назначить макрос». Откроется диалоговое окно назначения макроса.
  3. В диалоговом окне «Назначить макрос» вы увидите список всех макросов, имеющихся в книге.
  4. Щелкните имя макроса, который вы хотите назначить этой фигуре. В этом примере я нажимаю на макрос под названием «GoodMorning.
  5. Нажмите ОК.

Вот и все!

Выбранный макрос теперь назначен фигуре.

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

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

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

Обратите внимание, что вы не сможете щелкнуть и запустить макрос, когда фигура была выбрана (т. Е. Вы видите границу вокруг фигуры, которая появляется, когда вы ее выбираете). Чтобы сделать ее интерактивной, нажмите клавишу Escape или щелкните в любом месте в листе.

Кроме того, если вы уже назначили макрос фигуре, вы не сможете выбрать его, используя левую клавишу мыши (поскольку он стал интерактивным, и теперь при щелчке левой кнопкой мыши будет выполняться макрос). В этом случае выберите фигуру, удерживайте клавишу Ctrl, а затем нажмите левую клавишу.

Сохранение формы видимой при скрытии / изменении размера строк / столбцов

В Excel. когда вы вставляете фигуру, она располагается над ячейками — как диаграмма / объект.

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

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

Если вы не хотите, чтобы это произошло, выполните следующие действия:

  1. Щелкните форму правой кнопкой мыши
  2. Нажмите «Форматировать фигуру».
  3. На панели «Формат фигуры» (или в диалоговом окне, если вы используете Excel 2010 или более ранние версии) выберите «Размер и свойства».
  4. В разделе «Свойства» выберите вариант «Не перемещать и не изменять размер вместе с ячейками».
  5. Закройте панель (или диалоговое окно)

Теперь, когда вы изменяете размер строк / столбцов или скрываете их, форма останется на своем месте.

Назначение макроса кнопке управления формой

Если вас не слишком интересует форматирование кнопки и вас устраивает обычная серая кнопка, вы можете быстро вставить ее из элемента управления формы (или элемента управления ActiveX, как показано ниже), а затем назначить ему макрос.

Чтобы это работало, вам понадобится вкладка Разработчик на ленте. Если у вас его нет, вот подробное пошаговое руководство по размещению вкладки разработчика на ленте Excel.

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

  1. Перейдите на вкладку «Разработчик».
  2. В группе Ctrl нажмите Insert.
  3. В появившихся параметрах в параметрах элементов управления формы нажмите кнопку (элемент управления формы).
  4. Щелкните в любом месте листа. Это вставит кнопку в любое место, где вы щелкнете, и автоматически откроет диалоговое окно «Назначить макрос».
  5. В диалоговом окне «Назначить макрос» вы увидите список всех макросов, имеющихся в книге.
  6. Щелкните имя макроса, который вы хотите назначить этой кнопке. В этом примере я нажимаю на макрос под названием «GoodMorning».
  7. Нажмите ОК.

Вышеупомянутые шаги вставят кнопку, которой назначен указанный макрос.

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

Поскольку это объект, который помещается на лист (как фигуры / диаграммы), вы можете перетащить его в любое место на листе.

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

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

Вы получаете эти параметры форматирования кнопки, когда щелкаете правой кнопкой мыши по кнопке, а затем нажимаете «Управление форматом».

Откроется диалоговое окно «Управление форматом», в котором вы можете изменить тип / цвет шрифта, размер, выравнивание и т. Д.

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

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

  1. Щелкните правой кнопкой мыши по кнопке
  2. Нажмите на Управление форматом
  3. Перейдите на вкладку «Свойства».
  4. Выберите вариант — «Не перемещать и не изменять размер вместе с ячейками».
  5. Нажмите ОК

Назначение макроса кнопке управления ActiveX

Помимо кнопки управления формой, есть также кнопка управления ActiveX, которой вы можете назначить макрос.

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

Хотите знать, почему у нас есть два разных типа кнопок — Form Ctrl и ActiveX? В то время как элементы управления формы встроены в приложение Excel, ActiveX загружается из отдельной библиотеки DLL (библиотеки динамической компоновки). Это делает кнопки управления формой намного более надежными и надежными по сравнению с кнопками ActiveX. Вы можете узнать больше об этой разнице здесь, в сообщении в StackOverflow.

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

Чтобы вставить кнопку ActiveX и затем назначить ей макрос, выполните следующие действия:

  1. Перейдите на вкладку «Разработчик».
  2. В группе Ctrl нажмите Insert.
  3. В появившихся опциях в опциях ActiveX Ctrls щелкните опцию Command Button.
  4. Щелкните в любом месте листа. Это вставит кнопку куда бы вы ни щелкнули.
  5. Дважды щелкните кнопку, и откроется бэкэнд редактора VB, где вы можете разместить код для кнопки ActiveX.

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

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

Другой вариант, который вы можете рассмотреть (при работе с кнопками / фигурами и назначении им макросов), — это добавить макрос на панель быстрого доступа. Таким образом, вы можете запустить макрос одним щелчком мыши, и он всегда будет виден в QAT.

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

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

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

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

Для начала следует создать саму кнопку:

Макро VBA Excel

Отложим запись макроса .

    Кликнув правой кнопкой мыши по активному объекту, Вы можете выбрать его формат – цвет, стиль и размер текста, заливку и так далее.изменить текст кнопки

    Так же можно поменять надпись на кнопке.измененная кнопка с макросом

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

    Для этого следует записать макрос во вкладке макроси присвоить уже готовый макрос кнопке кликнув по ней ПКМи выбрав «Назначить макрос…»

    или

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

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

      Like this post? Please share to your friends:
    • Vba excel как изменить шрифт ячейки
    • Vba excel как изменить цвет текста
    • Vba excel как изменить формат ячейки
    • Vba excel как защитить макросы
    • Vba excel как защитить макрос