VBA Set Object Variables - рабочие книги, рабочие листы и т. Д.

Это руководство научит вас определять переменные объекта с помощью оператора 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Конец сКонец подписки
wave wave wave wave wave