Модуль класу VBA Excel
Модуль класу в VBA можна визначити як модуль, який допомагає створювати власні об'єкти з власними властивостями та методами, такими як робочі таблиці та цілі діапазону excel.
Простіше кажучи, за допомогою модуля класу VBA ми можемо створювати об'єкти з власними властивостями. Перш ніж перейти до створення модуля класу та його об'єктів у VBA, доцільно зрозуміти поняття класу та об’єкта. Розглянемо приклад у реальному світі, щоб зрозуміти, що таке клас та що таке об’єкт та його відношення.
Наприклад, якщо ми беремо план будівництва або план будівлі, за допомогою плану будівлі ми можемо побудувати не тільки одну будівлю, але ми можемо використовувати один і той же план і можемо побудувати кілька будівель у різних місцях. Вони можуть відрізнятися за розмірами кімнат або висотою даху і т. Д., Але фактичні властивості будівлі залишаються такими ж, як і підвал, двері, стовпи, стеля тощо.
Так само, якщо ви взяли креслення або модель автомобіля, ми можемо створити кілька копій до нього. Автомобіль матиме такі властивості, як кількість коліс, колір, потужність тощо. Деякі властивості можуть відрізнятися від автомобіля до автомобіля, але основна конфігурація залишиться такою ж.
Щоб зробити це зрозумілішим, ми можемо визначити:
- Клас: Це креслення речі, яка допомагає створити об’єкт.
- Об'єкт: Фактичне існування речі.
Як вставити модуль класу в Excel VBA?
Нижче наведено різні приклади для вставки модуля класу в excel, використовуючи код VBA.
Ви можете завантажити цей шаблон Excel-модуля класу VBA тут - Шаблон Excel-модуля класу VBAМодуль класу VBA Excel - приклад №1
Нижче наведено різні кроки для вставки модуля класу за допомогою коду VBA в excel.
Крок 1: Перейдіть до меню « Developer » у верхній частині та натисніть на Visual Basic ліворуч.
Крок 2: Для створення модуля класу нам потрібно вставити модуль класу в VBA. Клацніть спадне меню Вставити вгорі. З цього виберіть модуль класу .
Тепер модуль класу вставляється зліва в VBA, як показано на скріншоті нижче.
Як обговорювалося раніше, модуль класу - це креслення, за допомогою якого ми будемо створювати об'єкти. Отже, нам потрібно визначити кілька змінних та методів, які будуть доступні для всіх об’єктів.
Крок 3: Змініть ім'я модуля класу відповідно до вашої вимоги, тут я змінився як Blueprint
Крок 4: Тепер нам потрібно визначити змінні та методи.
Код:
Опція Явне публічне додавання як Integer Public pro як Integer Public x Як Integer Public y Як Integer
Як показано на наведеному вище скріншоті, спочатку почніть з явного параметра. Чому варіант явний? Це призведе до помилки, якщо ми використовуємо будь-яку змінну в програмі, яка не визначена так, ми повинні чітко визначити всі змінні. Тут ми визначаємо чотири змінні add, pro, x, y. Всі змінні визначаються як загальнодоступні, оскільки тоді тільки до цих змінних можна отримати доступ до інших модулів.
Крок 5: До цього часу нам визначені змінні тепер повинні визначати методи чи функції.
Код:
Опція Явне публічне додавання як Integer Public pro Як Integer Public x Як Integer Public y Як Integer Sub sum () add = x + y MsgBox (add) End Sub
Я визначив один простий метод sum (), ви можете визначити складні підпрограми відповідно до вимоги. Підметодом sum () ми визначили, як виконати операцію додавання та де зберігати це значення, а потім нарешті відобразити результат у вікні повідомлення.
Крок 6: Модуль класу створений, тепер прийшов час створити звичайний модуль для використання креслення класу. Отже, вставляємо модуль так само, як ми вставляли модуль класу.
Крок 7: За замовчуванням назва модуля буде module1, який ми можемо змінити, якщо хочемо. Запишіть код у модуль1.
Код:
Sub math () Dim obj As New Blueprint obj.x = 5 obj.y = 6 obj.sum End Sub
Тут ми пишемо математику підпрограми (). У цьому ми створили об'єкт з ім'ям obj таким же, як і креслення класу. Саме тому ми визначили таким чином "obj як новий план", що означає дублювання креслення, а назва - obj.
У цій програмі ми не визначали x і y, а безпосередньо присвоюємо значення x і y, оскільки вони вже визначені в модулі класу, і obj є його дублюванням. Отже, у нього з'являться ці змінні, але для їх виклику ми повинні використовувати ім'я object.variable.
Obj.x = 5 середнє значення 5 зберігається у змінній x.
Obj.y = 6 середнє значення 6 буде збережено у змінній y.
Тепер зателефонуйте до методів, визначених у модулі класу, використовуючи назву об'єкта obj.
Obj.sum () виконає операцію додавання, як визначено в модулі класу. У модулі класу, який ми визначили як x + y та об'єкт, ми визначили значення для x і y, отже, він прийме значення і виконає обчислення та збереже результат у додаванні, яке є цілим числом. На останньому кроці він відобразить результат у вікні повідомлення.
Крок 8: Запустіть модуль1, натиснувши клавішу F5 або натиснувши кнопку Play .
Крок 9: Виберіть ім'я макросу і натисніть на пункт Виконати .
Результати відображатимуться як нижче.
Модуль класу VBA Excel - приклад №2
Виконайте наступні кроки:
Крок 1: Тепер додайте інший метод під назвою "mul" для виконання операції множення. Результат слід зберігати у клітинках (5, 5) аркуша1.
Код:
Sub mul () pro = x * y Sheet1.Cells (5, 5) = pro Кінець Sub
У вищевказаному методі mul () ми помножили x і y, і результат зберігається у "pro", який є цілим типом даних.
Крок 2: Тепер перейдіть до module1 і зателефонуйте цьому методу mul, використовуючи об'єкт obj, як показано нижче.
Код:
Sub math1 () Dim obj As New Blueprint obj.x = 5 obj.y = 6 obj.mul End Sub
Крок 3: Натисніть клавішу F5 для запуску модуля. Перейдіть до аркуша1 і перевірте, як результат відображатиметься нижче.
У попередньому прикладі ми відображали результати у вікні повідомлення, але у другому методі ми відображали у програмі excel. Отже, якщо ми оголосимо змінні та методи в модулі класу, ми можемо використовувати його в інших модулях за допомогою об'єкта без повторення коду. Сподіваємось, ви зрозуміли, як вставити модуль класу в Excel VBA і як створити для нього об’єкт.
Що потрібно пам’ятати
- Завжди рекомендується використовувати параметр явного під час підготовки модуля класу, оскільки при використанні змінних у VBA може бути помилка друку.
- Якщо ми не згадаємо номер аркуша для відображення результатів, він автоматично вибере активний аркуш.
- Використовуйте загальнодоступне слово під час ініціювання змінних, щоб змінні могли отримати доступ до інших модулів.
- Ви можете викликати змінні або методи лише після створення об'єкта. значить, створити об’єкт для класу, а потім викликати змінні та методи.
Рекомендовані статті
Це посібник з модуля класу VBA. Тут ми обговорюємо, як вставити модуль класу в Excel за допомогою коду VBA разом з деякими практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -
- Знайти та замінити VBA
- Сума Excel за кольором
- Перевірка файлу VBA існує
- Excel Видалити зведену таблицю
- Код VBA | Приклади