Примеры макросов excel

В статье рассмотрены примеры макросов Excel — основные операторы и функции, которые можно использовать в работе как готовые блоки. Эти примеры макросов Excel помогут вам быстро освоить синтаксис VBA и начать автоматизировать рутинные задачи. Все примеры макросов Excel сопровождаются подробными комментариями.


Основа макроса — базовая структура

Любой макрос в Excel имеет следующую структуру:

Sub programm() ‘ начало макроса
    ‘ здесь идут команды, которые будут выполнены
End Sub ‘ конец макроса

💡 Важно: имя макроса не должно содержать пробелов. После Sub обязательно ставятся круглые скобки (). Всё, что находится между Sub и End Sub, называется телом макроса и выполняется при его запуске.


Элементы макросов: работа с книгами, листами, ячейками

Вот основные объекты, с которыми работают примеры макросов Excel:

  • Workbooks — книги Excel. Обозначение: Workbooks("Книга1"). Если в макросе не указана книга, значит макрос будет выполнен в активной книге.
  • Worksheets — листы Excel. Обозначение: Worksheets("Лист1"). Если в макросе не указан лист, значит макрос будет выполнен на активном листе.
  • Rows — строки. Обозначение: Rows(1) (первая строка), Rows("2:4") (строки со 2 по 4). Свойство EntireRow — целая строка.
  • Columns — столбцы. Обозначение: Columns(1) (первый столбец), Columns("2:4") (столбцы со 2 по 4). Свойство EntireColumn — целый столбец.
  • Cells — ячейки. Обозначение: Cells(1, 2), где 1 — номер строки, 2 — номер столбца (то есть ячейка B1).
  • Range — смежные ячейки на рабочем листе. Обозначение: Range(Cells(1, 2), Cells(3, 4)) (диапазон от B1 до D3).

Примеры обозначений объектов в коде:

  • Workbooks("Книга2").Worksheets("Лист2").Cells(1,1) — ячейка A1 на листе «Лист2» в книге «Книга2».
  • Worksheets("Лист2").Range("A5") — ячейка A5 на листе «Лист2».
  • Worksheets("Лист2").Range("A1:B10") — диапазон A1:B10 на листе «Лист2».
  • Cells(1, 2) — ячейка B1 на активном листе.
  • Range(Cells(1, 2), Cells(3, 4)) — диапазон от B1 до D3.
  • Rows("2:4") — строки со 2 по 4 на активном листе.
  • Columns("2:4") — столбцы со 2 по 4 (B, C, D).

Математические операторы и функции в макросах

Эти примеры макросов Excel показывают базовые математические операции, которые можно использовать в коде:

  • ^ — возведение в степень. Пример: 2 ^ 3 ⇒ 8.
  • * — умножение.
  • / — деление.
  • + — сложение.
  • — вычитание.
  • Abs — абсолютное значение числа. Пример: Abs(-20) ⇒ 20; Abs(20) ⇒ 20.
  • Sqr — квадратный корень. Пример: Sqr(4) ⇒ 2.

Работа с текстом: функции Len, Left, Right, Mid

При создании макросов Excel часто требуется обрабатывать текстовые строки. Вот основные функции:

  • Len() — число символов в строке. Пример: Len("абвгдеж") ⇒ 7.
  • Left() — берёт указанное количество символов слева (с начала строки). Пример: Left("абвгдежзиклмн", 4) ⇒ «абвг».
  • Right() — берёт указанное количество символов справа (с конца строки). Пример: Right("абвгдежзиклмн", 4) ⇒ «клмн».
  • Mid() — берёт указанное количество символов из середины строки, начиная с заданной позиции. Пример: Mid("абвгдежзиклмн", 4, 5) ⇒ «гдежз».

Форматирование ячеек с помощью макросов

Эти примеры макросов Excel показывают, как изменять внешний вид ячеек программно:

Cells(1, 1).Font.Name = «Courier New» ‘ формат шрифта
Cells(1, 1).Font.Size = 17 ‘ размер шрифта
Cells(1, 1).Font.Color = 12632256 ‘ цвет шрифта
Cells(1, 1).Font.Bold = True ‘ жирный
Cells(1, 1).Font.Italic = True ‘ курсив
Range(Cells(1, 1), Cells(2, 2)).Merge ‘ объединить ячейки
Range(Cells(6, 1), Cells(200, 30)).HorizontalAlignment = xlCenter ‘ выравнивание по центру по горизонтали
Range(Cells(6, 1), Cells(200, 30)).VerticalAlignment = xlCenter ‘ выравнивание по центру по вертикали
Cells(1, 1).Interior.Color = 10053375 ‘ выделить ячейку цветом
Range(Cells(1, 2), Cells(3, 4)).Borders.LineStyle = True ‘ границы ячеек
Range(Cells(1, 2), Cells(3, 4)).Borders.Color = vbBlue ‘ изменить цвет границы

Условный оператор IF … THEN … ELSE

Оператор IF проверяет условие: если оно истинно (TRUE) — выполняется один набор действий, если ложно (FALSE) — другой (необязательный). Это один из самых востребованных примеров макросов Excel для логических проверок.

Пример: выделение ячейки цветом в зависимости от значения

If Cells(1, 2) > 10 Then ‘ если значение ячейки B1 больше 10
    Cells(1, 2).Interior.Color = 65535 ‘ выделить ячейку жёлтым цветом
Else ‘ если условие не выполняется (значение ≤ 10)
    Cells(1, 2).Interior.Color = 5296274 ‘ выделить ячейку зелёным цветом
End If

Цикл FOR … NEXT

Цикл FOR … NEXT предназначен для запуска повторяющихся действий заданное количество раз. Это важный пример макросов Excel для автоматизации однотипных операций.

Пример: запись примеров по математике в строчках с 8 по 16 через одну

For i = 8 To 16 Step 2 ‘ i — номер строки от 8 до 16, шаг = 2 (8, 10, 12, 14, 16)
    a1 = Int(Rnd * 10) ‘ формируется первое слагаемое от 0 до 9
    a2 = Int(Rnd * 10) + 1 ‘ формируется второе слагаемое от 1 до 10
    Cells(i, 1) = a1 & » + » & a2 & » = » ‘ запись примера в i-й строке и 1-м столбце
Next i

💡 Пояснение: Step 2 означает, что переменная i будет увеличиваться на 2 после каждой итерации. Цикл выполнится 5 раз (для строк 8, 10, 12, 14, 16). Функция Rnd генерирует случайное число от 0 до 1, Int округляет до целого.


Комментарии в макросах — зачем они нужны

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

Правила написания комментариев:

  • Комментарии начинаются с апострофа (').
  • В редакторе VBA они автоматически выделяются зелёным цветом.
  • Можно писать комментарии на отдельной строке или после кода на той же строке.

📌 Важно: многие ленятся добавлять комментарии к своей программе. Но несколько минут, потраченных на написание понятного комментария, могут сэкономить часы времени в будущем, когда вы вернётесь к своему коду через несколько месяцев.


Где дальше изучать макросы Excel

Если вы хотите научиться писать макросы в Excel, то можно перейти к более детальному изучению. Настройку работы макросов Excel и их создание лучше осваивать на конкретном примере, где понятна цель написания программы. Изучить основы макросов можно на курсе «Excel макросы: генератор простых примеров по математике».

Курс по макросам Excel

Перейти к урокам по изучению макросов в Excel на примере формирования примеров по математике случайным образом. Курс состоит из 10 уроков + шаблоны готовых макросов.


Вывод

Рассмотренные примеры макросов Excel охватывают основные элементы VBA: работу с объектами (книги, листы, ячейки, диапазоны), математические операторы, текстовые функции, форматирование, условный оператор IF и цикл FOR. Используйте эти примеры макросов Excel как готовые строительные блоки для своих проектов. Со временем вы научитесь комбинировать их, создавая сложные программы автоматизации. Начните с малого: возьмите любой пример из статьи, вставьте в редактор VBA и запустите. Так вы быстрее поймёте логику работы макросов.

Оцените
( 4 оценки, средний 4.75 от 5 )
ПОЛЕЗНЫЕ ПРОГРАММЫ ДЛЯ УЧЕБЫ И РАБОТЫ
Добавить комментарий

Этот сайт защищен reCAPTCHA и применяются Политика конфиденциальности и Условия обслуживания применять.

Срок проверки reCAPTCHA истек. Перезагрузите страницу.