Как в excel открыть vba

Как в excel открыть vba
На чтение
13 мин.
Просмотров
49
Дата обновления
06.11.2024

Как в Excel 2010 или 2013 вставить и запустить код VBA – руководство для начинающих

Это краткое пошаговое руководство предназначено для начинающих и объясняет, как вставить код VBA (Visual Basic для приложений) в книгу Excel и как запустить вставленный макрос для выполнения различных задач на листе.

Большинство пользователей не являются гуру Microsoft Office. Они могут не знать всех тонкостей конкретной функции и не смогут ответить на вопрос, чем отличается скорость выполнения макроса VBA в Excel 2010 и 2013. Многие просто используют Excel в качестве инструмента обработки данных.

Предположим, вы хотите изменить данные на листе Excel определенным образом. Мы много искали в Google и нашли макрос VBA, который решает эту проблему. Однако мы плохо знаем VBA. Здесь на помощь приходят пошаговые инструкции, с помощью которых мы можем использовать найденный код.

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

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

 

    1. Открытие книги в Excel.
    2. Нажмите Alt + F11, чтобы открыть окно редактора Visual Basic
    3. На панели Project-VBA Project щелкните правой кнопкой мыши имя книги (в верхнем левом углу окна редактора) и выберите «Вставить»> «Модуль» в контекстном меню.
    4. Скопируйте код VBA (с веб-страницы или другого источника) и вставьте его в правую панель редактора VBA (окно Module1).Совет: как увеличить скорость выполнения макросов?

    В начале вашего макрокода VBA должны быть строки:

    Application.ScreenUpdating = False

    Application.Calculation = xlCalculationManual

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

     

    • В начале кода после всех строк, начинающихся с Dim (если нет строк, начинающихся с Dim, вставьте его сразу после строки Sub):

    Application.ScreenUpdating = False

    Application.Calculation = xlCalculationManual

    В конце кода перед End Sub:

    Application.ScreenUpdating = True

    Application.Calculation = xlAutomaticCalculation

    Эти строки, как вы можете понять по их содержимому, отключают обновление экрана и пересчет формул книги перед запуском макроса. После запуска кода эти параметры снова активируются. Этот прием приводит к ускорению выполнения макроса с 10% до 500% (да, макрос может работать в 5 раз быстрее, если есть манипуляции с ячейками без лишних перерывов).

  1. Давайте сохраним книгу как книгу Excel с поддержкой макросов. Для этого нажмите Ctrl + S и в окне с предупреждением Следующие функции нельзя сохранить в книге без макросов, нажмите Нет).Откроется диалоговое окно «Сохранить как». В раскрывающемся списке Тип файла выберите книгу Excel с поддержкой макросов и нажмите кнопку Сохранить).

  1. Нажмите Alt + Q, чтобы закрыть окно редактора VBA и вернуться в книгу Excel.

Запускаем макрос VBA в Excel

Нажмите Alt + F8, чтобы запустить только что добавленный макрос. Откроется диалоговое окно «Макрос». В списке «Имя макроса» выберите нужный макрос и нажмите кнопку «Выполнить).

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

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

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

  1. Создайте новую книгу Excel и сохраните ее как книгу с поддержкой макросов с расширением .xlsm. В предыдущих версиях Excel до 2003 года это была обычная книга с расширением .xls.
  2. Нажмите сочетание клавиш «left_Alt_key + F11», чтобы открыть редактор VBA. Этот трюк не сработает с правой клавишей Alt. Вы также можете получить доступ к редактору VBA, щелкнув ссылку «Visual Basic» на панели инструментов «Разработчик» на панели быстрого доступа. Если вкладки «Разработчик» нет на ленте, вам необходимо добавить ее в настройках параметров Excel.

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

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

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

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

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

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

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

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

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

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

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

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



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

0 Комментариев
Комментариев на модерации: 0
Оставьте комментарий