Это руководство научит вас определять переменные объекта с помощью оператора Set в VBA.
Определение переменных объекта
Объекты - краеугольный камень Microsoft Office - без объектов мы ничего не добьемся. В Excel к объектам относятся объекты "Рабочая книга", "Рабочий лист" или "Диапазон". В Microsoft Word примерами являются объект Document или Table. Каждый объект имеет множество Характеристики а также Методы которые можно запрограммировать для управления поведением этого объекта.
Объявление объектной переменной
Прежде чем мы сможем ссылаться на объект в коде и, следовательно, управлять объектом, нам нужно объявить объект. Мы можем сделать это с помощью оператора Dim.
123456 | Dim wkb как рабочая тетрадьДим работает как рабочий листDim Rng as RangeDim wdDoc как документDim wdTbl as TableDim shp as Shape |
Этот Тусклый объявление может происходить внутри процедуры:
или вне процедуры на уровне модуля:
Если переменная объявлена на уровне модуля (вне процедуры), ее можно использовать во всем модуле.
Если объектная переменная объявлена с помощью оператора Public, переменная может использоваться во всем проекте VBA:
Установить значение
После того, как вы объявили объект, вам нужно присвоить ему значение. Это необходимо сделать с помощью Установить заявление и может быть сделано только в Процедура.
12345 | Sub SetObjects ()Установите wkb = ActiveWorkbookУстановить wks = Sheet1Установить rng = Range ("A1: G4")Конец подписки |
Примечание. Это отличается от присвоения значений не объектным переменным. Вы ДОЛЖНЫ использовать оператор Set для присвоения объекта переменной. В противном случае вы получите сообщение об ошибке:
После того, как вы присвоили объекту значение, вы можете написать код для управления поведением или манипулирования объектом.
Программирование на VBA | Генератор кода действительно работает для вас!
Примеры объектов в Excel
Объект книги
После того, как вы объявили переменную книги, вы можете назначить книгу этому объекту и использовать доступные свойства и методы для управления этим объектом. В приведенном ниже примере мы собираемся сохранить книгу.
123456789101112 | Sub WorkbookObject ()'объявить объект книгиDim wkb как рабочая тетрадь'назначить объекту несохраненную книгуУстановить wkb = Workbooks ("Book1")'сохранить книгуwkb.Save как "C: \ data \ testbook.xlsx"'закрыть книгуwkb.close'не забудьте выпустить объектУстановить wkb = ничегоКонец подписки |
Объект рабочего листа
Точно так же вы можете управлять листом или листами после того, как вы объявили лист как переменную. В приведенном ниже примере мы переименовываем Sheet1 и Sheet2.
12345678910111213 | Sub WorksheetObject ()Dim wks1 как рабочий листDim wks2 как рабочий лист'инициализировать объектыУстановите wks1 = Sheet1Установите wks2 = Sheet2'переименовать листыwks1.Name = "Клиенты"wks2.Name = "Продукты"'установить объекты в ничтоwks1 = Ничегоwks2 = НичегоКонец подписки |
Устали искать примеры кода VBA? Попробуйте AutoMacro!
Объект диапазона
Объект Range - один из наиболее полезных объектов для управления в Excel. В приведенном ниже примере мы выделим диапазон от A1 до E1 жирным шрифтом и отформатируем его с помощью нижней границы.
12345678910111213 | Sub RangeObject ()Dim rng1 As Range'инициализировать диапазонУстановить rng = Range ("A1: E1")'выделите диапазон жирным шрифтом и установите нижнюю границуrng.Font.Bold = TrueС rng1.Borders (xlEdgeBottom).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Weight = xlThinКонец сКонец подписки |
Объект формы
Вы также можете использовать объектные переменные для работы с фигурами.
123456789101112 | Sub AddShape ()Dim shp как форма'создать формуУстановите shp = ActiveDocument.Shapes.AddShape (msoShapeSmileyFace, 68.25, 225.75, 136.5, 96 #)С шп'изменить цвет и стиль внутри.Fill.ForeColor.RGB = RGB (255, 255, 0)..Залив. Твердое телопоправьте улыбку!.Adjustments.Item (1) = 0,07181Конец сКонец подписки |