Введение в VBA: Чтение, написание и запуск макроса (часть 3 из 3)

Совет для чтения строки кода — начать с конца.

Когда вы учитесь писать код, лучше всего, если вы знаете, как его читать. Иногда вы видите длинную строку кода с множеством точек и думаете: «Что это значит ???»

Я считаю, что чтение кода с конца помогает. Начните с последнего слова и двигайтесь влево, заменяя точки словами «для».

Reading VBA Code Backwards - Intro to VBA

Давайте попробуем это на следующей строке кода.

Application.Workbooks(“Book1.xlsx”).Worksheets(“Sheet1”).Range(“A1”).Value = 100

Начиная справа… Установите значение диапазона А1 листа Sheet1 для Book1.xlsx приложения (Excel) равным 100.

Вот еще один пример:

Range(“A1:F1”).Font.Bold = True

Установите свойства «Жирный шрифт» для диапазона A1: F1 значение True.

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

Сокращение кода и повышение эффективности — пожалуйста!

Оператор With может помочь нам упростить чтение и запись нашего кода, сохраняя при этом его полную квалификацию.

VBA With Statement Helps Shorten Code

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

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

В каком порядке запускается макрос?

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

Только одна строка кода выполняется / оценивается одновременно, и каждая строка кода оценивается по порядку. Как только VBA завершает оценку строки кода или выполняет действие, он переходит на следующую строку.

VBA Code Runs From Top Down

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

Step Through VBA Code with the F8 Key

Это основы, но все может быть сложнее. Мы можем использовать операторы в VBA для управления порядком выполнения кода. Оператор типа If Then Else, Select Case, loop и GoTo может указать VBA пропустить, повторить или перейти к различным разделам кода.

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

Основной принцип все тот же. VBA будет запускать / оценивать только одну строку кода одновременно сверху вниз.

Объектная модель Excel — это ваша кухня MasterChef

Объектная модель Excel в VBA огромна, и есть чему поучиться. Понимание того, как работает иерархия, поможет вам ориентироваться в библиотеке и изучать VBA.

Но не позволяйте огромному размеру библиотеки объектов пугать вас. Когда вы идете готовить еду, вам не понадобятся все инструменты на кухне, и вы не собираетесь использовать все ингредиенты в кладовой. То же верно, когда вы пишете макросы. Лучше начать с основ и продолжить свой путь. Начните с миски каши и продолжайте свой путь к изысканному обеду из 5 блюд.

MasterChef Kitchen Pantry

Самое интересное, что вы можете программировать практически все объекты в Excel с помощью VBA. Если вы когда-либо видели телевизионное шоу MasterChef, у участников шоу есть гигантская кухня и кладовая для работы. Они имеют в своем распоряжении практически все кухонные инструменты и ингредиенты, которые вы можете придумать.

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

Читайте предыдущие статьи:
Введение в VBA: Макросы. Объяснение на кухне (Часть 1 из 3)
Введение в VBA: Объектная модель VBA (Часть 2 из 3)

Оцените статью
Добавить комментарий