Този урок ще ви научи как да дефинирате обектни променливи с помощта на инструкцията Set във VBA.
Определяне на обектни променливи
Обектите са крайъгълният камък на Microsoft Office - без обекти не можем да постигнем нищо. В Excel обектите включват работна книга, работен лист или обекти на диапазон. В Microsoft Word примери са обектът Документ или Таблица. Всеки обект има разнообразие от Имоти и Методи които могат да бъдат програмирани да контролират поведението на този обект.
Деклариране на променлива на обекта
Преди да можем да препратим обекта в код и следователно да контролираме обекта, трябва да го декларираме. Можем да направим това с помощта на оператора Dim.
123456 | Dim wkb като работна книгаDim wks като работен листDim Rng като RangeЗатъмнете wdDoc като документЗатъмнете wdTbl като таблицаDim shp като Shape |
Това Дим декларация може да възникне в рамките на процедура:
или извън процедура на ниво модул:
Ако променливата е декларирана на ниво модул (извън процедурата), променливата може да се използва в целия модул.
Ако обектната променлива е декларирана с публичния израз, тогава променливата може да се използва в целия VBA проект:
Задайте стойност
След като декларирате обекта, трябва да присвоите стойност на обекта. Това трябва да стане с помощта на Задайте изявление и може да се направи само в рамките на a Процедура.
12345 | Sub SetObjects ()Задайте wkb = ActiveWorkbookЗадайте wks = Sheet1Задайте rng = диапазон ("A1: G4")End Sub |
Забележка: Това е различно от присвояването на стойности на обектни променливи. ТРЯБВА да използвате оператора Set, за да присвоите обекта на променливата. Ако не го направите, ще получите грешка:
След като присвоите стойност на обекта, можете да напишете код, за да контролирате поведението или да манипулирате обекта.
VBA програмиране | Code Generator работи за вас!
Примери за обекти в Excel
Обект на работна книга
След като декларирате променлива на работна книга, можете да присвоите работна книга на този обект и да използвате наличните свойства и методи за манипулиране на този обект. В примера по -долу ще запазим работна книга.
123456789101112 | Sub WorkbookObject ()'декларирайте обекта на работната книгаDim wkb като работна книга'присвояване на незаписана работна книга на обектаЗадайте wkb = Работни книги ("Книга1")'запазете работната книгаwkb.SaveAs "C: \ data \ testbook.xlsx"'затворете работната книгаwkb.close'не забравяйте да освободите обектаЗадайте wkb = НищоEnd Sub |
Обект на работен лист
По същия начин можете да манипулирате работен лист или работни листове, след като декларирате работния лист като променлива. В примера по -долу преименуваме Sheet1 и Sheet2.
12345678910111213 | Sub WorksheetObject ()Dim wks1 като работен листDim wks2 като работен лист'инициализирайте обектитеЗадайте wks1 = Sheet1Задайте wks2 = Sheet2'преименувайте листоветеwks1.Name = "Клиенти"wks2.Name = "Продукти"'поставете обектите на нищоwks1 = Нищоwks2 = НищоEnd Sub |
Уморени ли сте от търсене на примери за VBA код? Опитайте AutoMacro!
Range Object
Обектът Range е един от най -полезните обекти за манипулиране в Excel. В примера по -долу удебеляваме Range A1 до E1 и го форматираме с долна граница.
12345678910111213 | Sub RangeObject ()Dim rng1 As Range„инициализирайте обхватаЗадайте rng = диапазон ("A1: E1")'удебелете диапазона и задайте долната границаrng.Font.Bold = ВярноС rng1.Borders (xlEdgeBottom).LineStyle = xl Непрекъснато.ColorIndex = 0.TintAndShade = 0.Тегло = xlТънкоКрай с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 |