Как создать макрос или скрипт VBA в Excel


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

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

На вкладке Разработчик на ленте в Excel пользователи могут записывать щелчки мыши и нажатия клавиш (макросы). Однако некоторые функции требуют более глубокого написания сценариев, чем могут обеспечить макросы. Именно здесь сценарии VBA становятся огромным преимуществом. Это позволяет пользователям создавать более сложные сценарии.

В этой статье мы объясним следующее:

  • Включение скриптов и макросов
  • Как создать макрос в Excel
  • Конкретный пример макроса
  • Подробнее о VBA
  • Создайте кнопку для начала работы с VBA
  • Добавьте код, чтобы придать кнопке функциональность
  • Это сработало?
  • Включение скриптов и макросов

    Прежде чем создавать макросы или сценарии VBA в Excel, необходимо включить вкладку Разработчик в меню Лента . Вкладка «Разработчик» по умолчанию не включена. Чтобы включить его:

    • Откройте лист Excel.
    • Нажмите Файл >Параметры >Настроить ленту.
      • Поставьте галочку рядом с Разработчик .
      • 4
        • Нажмите вкладку Разработчик в меню Лента .
          • Далее нажмите Безопасность макросов и установите флажок Включить все макросы (не рекомендуется: может выполняться потенциально опасный код).
          • Затем нажмитеОК.
          • Причина, по которой макросы не включены по умолчанию и сопровождаются предупреждением, заключается в том, что они представляют собой компьютерный код, который может содержать вредоносное ПО..

            Если вы работаете над общим проектом в Excel и других программах Microsoft, убедитесь, что документ получен из надежного источника.

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

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

            В него добавляются все действия, которые вы выполняете в Excel при записи макроса.

            • На вкладке «Разработчик» нажмите Записать макрос .
            • 7
              • Введите имя макроса , горячую клавишу и описание. Имена макросов должны начинаться с буквы и не могут содержать пробелов. Сочетание клавиш должно быть буквой.
              • Решите, где вы хотите сохранить макрос, одним из следующих вариантов:

                • Личная книга макросов . Будет создан скрытый документ Excel с сохраненными макросами, которые можно будет использовать с любыми документами Excel.
                • Новая книга : создаст новый документ Excel для хранения созданных макросов.
                • Эта книга : будет применена только к документу, который вы сейчас редактируете.
                • По завершении нажмите ОК .

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

                    Давайте начнем с простой таблицы с указанием клиентов и суммы их задолженности. Начнем с создания макроса для форматирования листа.

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

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

                    Запись макроса

                    • Нажмите Записать макрос . Назовем его Format_Customer_Data и нажмите ОК .
                    • Чтобы получить нужное форматирование, мы изменим имя первого столбца на Имя .
                    • Затем вставьте столбец рядом с A и назовите его Фамилия ..
                    • Выделите все имена в первом столбце (который по-прежнему включает имя и фамилию) и нажмите Данные на ленте навигации.
                    • Нажмите Текст по столбцам .
                      • Отметьте галочкой С разделителями >Далее >Разделить пробелом >Далее >Готово. См. снимок экрана ниже и показано, как имя и фамилия были разделены в ходе описанного выше процесса.
                        • Чтобы отформатировать поле «Остаток к оплате», выделите суммы. Нажмите Главная >Условное форматирование >Выделить правила для ячеек >Больше >0 .
                        • При этом будут выделены ячейки, по которым имеется задолженность. Мы добавили несколько клиентов без баланса, чтобы проиллюстрировать форматирование.

                          • Вернитесь в раздел Разработчик и нажмите Остановить запись .
                          • Применить макрос

                            Давайте начнем с исходной таблицы, прежде чем мы записали макрос, чтобы правильно ее отформатировать. Нажмите Макросы , выберите и Запустите только что созданный макрос.

                            Когда вы запускаете макрос, все форматирование выполняется за вас. Этот макрос, который мы только что создали, хранится в редакторе Visual Basic .

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

                            Подробнее о VBA

                            Чтобы узнать о VBA, нажмите Макро на вкладке Разработчик . Найдите тот, который вы создали, и нажмите Изменить.

                            Код, который вы видите в поле выше, создан при записи макроса.

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

                            Создайте кнопку для начала работы с VBA

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

                            • Чтобы вставить элемент кнопки, перейдите на вкладку Разработчик ..
                            • Выберите Командная кнопка ActiveX в раскрывающемся списке рядом с элементом Вставить в разделе Элементы управления .
                              • Перетащите кнопку в любое место таблицы, чтобы вы могли легко получить к ней доступ и изменить ее позже, если захотите.
                                • Чтобы прикрепить код, щелкните кнопку правой кнопкой мыши и выберите Свойства . Мы сохраним Имя как CommandButton , а ЗаголовокПреобразовать (это текст кнопки).
                                • Добавьте код, чтобы придать кнопке функциональность

                                  Кодирование VBA не выполняется в интерфейсе Excel. Это делается в отдельной среде.

                                  • Перейдите на вкладку Разработчик и убедитесь, что Режим разработки активен.
                                    • Чтобы получить доступ к коду только что созданной кнопки, щелкните ее правой кнопкой мыши и выберите Просмотреть код .
                                      • Глядя на код на скриншоте ниже, обратите внимание, что начало (Private Sub ) и конец (End Sub ) кода уже есть.
                                        • Приведенный ниже код будет управлять процедурой конвертации валюты.
                                        • ActiveCell.Value = (ActiveCell * 1,28)

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

                                          На снимке экрана ниже показано, как код выглядит в окне VBA после его вставки.

                                          • Перейдите к Файл в верхней части навигации и нажмите «Закрыть и вернуться в Microsoft Excel », чтобы вернуться в основной интерфейс Excel.
                                          • Это сработало?

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

                                            • Введите любое число в таблицу и нажмите кнопку Преобразовать . Если ценность вашего числа увеличится примерно на четверть, значит, это сработало.
                                            • В этом примере я поместил в ячейку число 4. После нажатия кнопки Преобразовать число изменилось на 5,12. Поскольку 4 раза 1,28 равно 5,12, код выполнился правильно.

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

                                              .

                                              Похожие сообщения:


                                              13.12.2019

                                              Авторские права © Tips & Tricks • Tech 2024