Visual Basic for Applications (VBA, Visual Basic для приложений) — немного упрощённая реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office.
Основная задача макросов – автоматизация процессов. Один раз написанный код впоследствии может и ускорить работу и сэкономить время.VBA это объектно-ориентированный язык программирования. Объектами могут выступать все ячейки, диаграммы и т.п. В первую очередь, чтобы включить возможность написания, чтения или редактирования кода VBA нужно активировать вкладку “Разработчик”, которая по умолчанию скрыта.
Чтобы открыть окно редактора кода необходимо перейти во вкладке “Разработчик” в разделе “Код” в элемент “Visual Basic”.
Для лучшей работы с кодом рекомендуется включить Toolbars (View – Toolbars).
Как создать модуль, в котором непосредственно пишется код, смотрите ниже.
Поздравляю, Вы готовы написать свой первый код.
Операции с объектами
Установка свойства объекту
К свойствам может относится всё, что угодно, значение, размер шрифта в ячейке, ее цвет и т.п.
Вот парочка примеров:
Range("A1").Value = "Hello, Excel!" 'устанавливает в ячейке "A1" значение "Hello, Excel!"
Range("A2").Value = 2 'устанавливает в ячейке "A2" значение 2
Range("B2").Value = 2*2 'устанавливает в ячейке "B2" значение 4
Range("A1").Interior.Color = vbGreen 'присваивает зеленый цвет ячейке "A1"
Range("A1").Interior.Color = RGB(0, 255, 0) 'присваивает зеленый цвет ячейке "A1"
Чтение свойств объекта
В процессе написания кода или в результате его выполнения нужно вывести значение ячейки “A1” пользователю.
Для этого воспользуемся следующей командой:
MsgBox(Range("A1").Value) 'выводит информационное окошко со значением ячейки "A1"
Помимо прямого указания ячейки можно указать переменную, предварительно поместив в нее значение ячейки.
x = Range("A1").Value 'устанавливает в ячейке "A2" значение 2
MsgBox(x) 'выводит информационное окошко со значением ячейки "A1"
Если объединить все выше написанные строки кода, то результат выполнения будет слудеющим.
![](https://aboutdatum.ru/wp-content/uploads/2022/04/Рисунок5.png)
Первая задача по написанию собственного кода
Предлагаю Вам написать свой первый код в VBA, Вы уже знаете, как заполнять ячейки через написание кода, теперь необходимо закрепить свои навыки.
Необходимо написать код, который проставит в ячейках A2:A6 цифры от 1 до 5, а в столбце B, в аналогичных строках должен высчитываться квадрат числа. В ячейках A1 и B1 должны быть вставлены названия столбцов.
Результат должен быть таким:
![](https://aboutdatum.ru/wp-content/uploads/2022/04/Рисунок6.png)
Ниже находится файл с решенным заданием.