Цей підручник навчить вас визначати об’єктні змінні за допомогою оператора Set у VBA.
Визначення змінних об’єкта
Об’єкти є наріжним каменем Microsoft Office - без об’єктів ми нічого не можемо досягти. У Excel об’єкти включають об’єкти робочої книги, аркуша чи діапазону. У Microsoft Word прикладами є документ або таблиця. Кожен об’єкт має різноманітність Властивості та Методи які можна запрограмувати для управління поведінкою цього об'єкта.
Оголошення змінної об’єкта
Перш ніж ми зможемо посилатися на об’єкт у коді, а отже, керувати об’єктом, нам потрібно оголосити об’єкт. Ми можемо це зробити за допомогою оператора Dim.
123456 | Dim wkb як Робочий зошитЗатемнити робочі дні як робочий аркушDim Rng як діапазонЗатемнити wdDoc як документЗатемнити wdTbl як таблицюЗатемнити шп як Фігура |
Це Dim оголошення може відбуватися всередині процедури:
або поза процедурою на рівні модуля:
Якщо змінна оголошена на рівні модуля (поза процедурою), змінна може використовуватися по всьому модулю.
Якщо змінна об'єкта оголошена за допомогою оператора Public, її можна використовувати у всьому проекті VBA:
Встановити значення
Після того як ви оголосили об’єкт, вам потрібно присвоїти йому значення. Це потрібно зробити за допомогою Встановити оператор і це можна зробити лише в межах a Процедура.
12345 | Sub SetObjects ()Встановити wkb = ActiveWorkbookВстановити wks = Sheet1Встановити rng = Діапазон ("A1: G4")End Sub |
Примітка. Це відрізняється від присвоєння значень необ’єктним змінним. Ви повинні використовувати оператор Set, щоб призначити об'єкт змінної. Якщо цього не зробити, ви отримаєте повідомлення про помилку:
Після того, як ви призначили об’єкту значення, ви зможете написати код, щоб контролювати поведінку або маніпулювати об’єктом.
Програмування VBA | Генератор коду працює для вас!
Приклади об’єктів у Excel
Об’єкт робочої книги
Після того, як ви оголосили змінну книги, ви можете призначити цю книгу для цього об’єкта та використовувати доступні властивості та методи для маніпулювання цим об’єктом. У наведеному нижче прикладі ми збираємося зберегти книгу.
123456789101112 | Sub WorkbookObject ()'оголосити об'єкт книгиDim wkb як Робочий зошит'призначити об’єкту незбережену книгуВстановити wkb = Робочі зошити ("Книга1")'зберегти книгуwkb.SaveAs "C: \ data \ testbook.xlsx"'закрити трудову книжкуwkb.close'Не забудьте звільнити об’єктВстановити wkb = НічогоEnd Sub |
Об’єкт робочого аркуша
Аналогічно ви можете маніпулювати аркушем або аркушами після того, як ви оголосили аркуш як змінну. У наведеному нижче прикладі ми перейменуємо Sheet1 та Sheet2.
12345678910111213 | Підробочий листObject ()Dim wks1 як робочий аркушDim wks2 як робочий аркуш'ініціалізувати об'єктиВстановити wks1 = Аркуш1Встановіть wks2 = Sheet2'перейменуйте аркушіwks1.Name = "Клієнти"wks2.Name = "Продукти"'встановити об'єкти на ніщоwks1 = Нічогоwks2 = НічогоEnd Sub |
Втомилися від пошуку прикладів коду VBA? Спробуйте AutoMacro!
Об'єкт діапазону
Об'єкт Діапазон є одним з найбільш корисних об'єктів для роботи в Excel. У наведеному нижче прикладі діапазон A1 - E1 виділено жирним шрифтом і відформатовано з нижньою межею.
12345678910111213 | Sub RangeObject ()Dim rng1 As Range'ініціалізувати діапазонВстановити rng = Діапазон ("A1: E1")'жирний діапазон і встановлення нижньої межіrng.Font.Bold = ПравдаЗ rng1.Border (xlEdgeBottom).LineStyle = xl Безперервний.ColorIndex = 0.TintAndShade = 0.Вага = x1ТонкийЗакінчити зEnd Sub |
Об'єкт фігури
Ви також можете використовувати змінні об’єкта для роботи з фігурами.
123456789101112 | Sub AddShape ()Dim shp As Shape'створити формуВстановити shp = ActiveDocument.Shapes.AddShape (msoShapeSmileyFace, 68.25, 225.75, 136.5, 96#)З шп'зміна кольору та стилю всередині.Fill.ForeColor.RGB = RGB (255, 255, 0).Заповнити. Твердий'налаштуй посмішку!.Налаштування. Пункт (1) = 0,07181Закінчити зEnd Sub |