Свойства и методи на обекти в програмирането на Excel 2016 VBA

Въпреки че да знаете как да се позовавате на обекти е важно, не можете да правите полезно програмиране на Excel VBA, като просто се позовавате на обект. За да постигнете нещо смислено, трябва да направите едно от двете неща:

  • Четете или променяйте свойствата на обекта .

  • Посочете метод на действие, който да се използва с обект.

С буквално хиляди налични свойства и методи можете лесно да бъдете претоварени. Само не забравяйте, че никога няма да се наложи да използвате повечето от наличните свойства и методи.

Свойства на обекта

Всеки обект има свойства. Можете да мислите за свойствата като атрибути, които описват обекта. Свойствата на обекта определят как изглежда, как се държи и дори дали е видим. Използвайки VBA, можете да направите две неща със свойствата на обекта:

  • Разгледайте текущата настройка за свойство.

  • Променете настройката на свойството.

Например, едноклетъчен обект Range има свойство, наречено Value. Свойството Value съхранява стойността, съдържаща се в клетката. Можете да напишете VBA код, за да покажете свойството Value, или можете да напишете VBA код, за да зададете свойството Value на конкретна стойност. Следният макрос използва вградената функция MsgBox на VBA, за да изведе поле, което показва стойността в клетка A1 на Sheet1 на активната работна книга:

Свойства и методи на обекти в програмирането на Excel 2016 VBA

Това поле за съобщение показва свойството Value на обект Range.

Подпоказваща стойност()
 Съдържание = Работни листове(“Лист1”).Обхват(“A1”).Стойност
 Съдържание на MsgBox
Край под

Между другото, MsgBox е много полезна функция. Можете да го използвате за показване на резултати, докато Excel изпълнява вашия VBA код.

Кодът в предходния пример показва текущата настройка на свойството Value на клетка. Ами ако искате да промените настройката за това свойство? Следният макрос променя стойността в клетка A1 чрез промяна на свойството Value на клетката:

Подпромяна стойност()
 Работни листове(“Лист1”).Обхват(“A1”).Стойност = 994,92
Край под

След като Excel изпълни тази процедура, клетка A1 на Sheet1 на активната работна книга съдържа стойността 994,92. Ако активната работна книга няма лист с име Sheet1, резултатът от изпълнението на този макрос е съобщение за грешка. VBA просто следва инструкциите и не може да работи с лист, който не съществува.

Всеки обект има свой собствен набор от свойства, въпреки че някои свойства са общи за много обекти. Например, много (но не всички) обекти имат свойство Visible. Повечето обекти също имат свойство Name.

Някои свойства на обекта са свойства само за четене, което означава, че вашият код може да получи стойността на свойството, но не може да го промени.

Колекцията също е обект. Това означава, че колекцията също има свойства. Например, можете да определите колко работни книги са отворени чрез достъп до свойството Count на колекцията Workbooks. Следната VBA процедура показва поле за съобщение, което ви казва колко работни книги са отворени:

Подброячи()
 MsgBox Workbooks.Count
Край под

Обектни методи

В допълнение към свойствата, обектите имат методи. А метод е действие извършвате с даден обект. Методът може да промени свойствата на обекта или да накара обекта да направи нещо.

Този прост пример използва метода ClearContents върху обект Range, за да изтрие съдържанието на 12 клетки в активния лист:

Sub ClearRange()
 Диапазон(“A1:A12”).ClearContents
Край под

Някои методи приемат един или повече аргументи. Един аргумент е стойност, която допълнително се уточнява действията за изпълнение. Поставяте аргументите за метод след метода, разделени с интервал. Няколко аргумента са разделени със запетая.

Следният пример активира Sheet1 (в активната работна книга) и след това копира съдържанието на клетка A1 в клетка B1 чрез използване на метода Copy на обекта Range. В този пример методът Copy има един аргумент, който е диапазонът на местоназначение за операцията за копиране:

Sub CopyOne()
 Работни листове(“Лист1”).Активирайте
 Диапазон (“A1”). Диапазон на копиране (“B1”)
Край под

Обърнете внимание, че препратката към работния лист е била пропусната, когато са били препратени обектите Range. Това може да бъде направено безопасно, защото беше използван израз за активиране на Sheet1. (използвайки метода за активиране).

Друг начин да посочите аргумент за метод е да използвате официалното име на аргумента, последвано от двоеточие и знак за равенство. Използването на именувани аргументи е по избор, но това често може да направи кода ви по-лесен за разбиране. Второто изявление в процедурата CopyOne може да бъде написано по следния начин:

Обхват(“A1”). Дестинация на копиране:=Обхват(“B1”)

Забележете малката подкана, докато изявлението се въвежда. Тази подкана показва официалното име на аргумента.

Свойства и методи на обекти в програмирането на Excel 2016 VBA

VBE показва списък с аргументи, докато пишете.

Тъй като колекцията също е обект, колекциите имат методи. Следният макрос използва метода Add за колекцията Workbooks:

Поддобавяне на работна книга()
 Работни тетрадки.Добавяне
Край под

Както може да очаквате, това изявление създава нова работна книга. С други думи, той добавя нова работна книга към колекцията Workbooks. След като изпълните този макрос, активната работна книга ще бъде нова работна книга.

Обектни събития

Има още една тема, която трябва да знаете: събития. Обектите реагират на различни събития, които се случват. Например, когато работите в Excel и активирате друга работна книга, възниква събитие Активиране на работна книга. Можете например да имате VBA макрос, който е проектиран да се изпълнява всеки път, когато възникне събитие за активиране за конкретен обект на работна книга.

Excel поддържа много събития, но не всички обекти могат да реагират на всички събития. И някои обекти не реагират на никакви събития. Единствените събития, които можете да използвате, са тези, предоставени от програмистите на Microsoft Excel.


Как да блокирате Microsoft Word да отваря файлове в режим само за четене в Windows

Как да блокирате Microsoft Word да отваря файлове в режим само за четене в Windows

Как да блокирам Microsoft Word да отваря файлове в режим само за четене в Windows Microsoft Word отваря файлове в режим само за четене, което прави невъзможно редактирането им? Не се притеснявайте, методите са по-долу

Как да коригирате неправилно отпечатване на документи на Microsoft Word

Как да коригирате неправилно отпечатване на документи на Microsoft Word

Как да коригирате грешки при отпечатването на неправилни документи на Microsoft Word Грешките при отпечатването на документи на Word с променени шрифтове, разхвърляни абзаци, липсващ текст или изгубено съдържание са доста чести. Въпреки това недейте

Изтрийте рисунки с писалка и маркер на вашите слайдове на PowerPoint

Изтрийте рисунки с писалка и маркер на вашите слайдове на PowerPoint

Ако сте използвали писалката или маркера, за да рисувате върху слайдовете на PowerPoint по време на презентация, можете да запазите чертежите за следващата презентация или да ги изтриете, така че следващия път, когато го покажете, да започнете с чисти слайдове на PowerPoint. Следвайте тези инструкции, за да изтриете чертежи с писалка и маркери: Изтриване на линии една в […]

Съдържание на библиотеката за стилове в SharePoint 2010

Съдържание на библиотеката за стилове в SharePoint 2010

Библиотеката със стилове съдържа CSS файлове, файлове с разширяем език на стиловия език (XSL) и изображения, използвани от предварително дефинирани главни страници, оформления на страници и контроли в SharePoint 2010. За да намерите CSS файлове в библиотеката със стилове на сайт за публикуване: Изберете Действия на сайта→Преглед Цялото съдържание на сайта. Появява се съдържанието на сайта. Библиотеката Style се намира в […]

Форматирайте числата в хиляди и милиони в отчети на Excel

Форматирайте числата в хиляди и милиони в отчети на Excel

Не затрупвайте аудиторията си с огромни числа. В Microsoft Excel можете да подобрите четливостта на вашите табла за управление и отчети, като форматирате числата си така, че да се показват в хиляди или милиони.

Как да споделяте и следвате сайтове на SharePoint

Как да споделяте и следвате сайтове на SharePoint

Научете как да използвате инструменти за социални мрежи на SharePoint, които позволяват на индивиди и групи да общуват, да си сътрудничат, споделят и да се свързват.

Как да конвертирате дати в юлиански формати в Excel

Как да конвертирате дати в юлиански формати в Excel

Юлианските дати често се използват в производствени среди като времеви печат и бърза справка за партиден номер. Този тип кодиране на дата позволява на търговците на дребно, потребителите и обслужващите агенти да идентифицират кога е произведен продуктът и по този начин възрастта на продукта. Юлианските дати се използват и в програмирането, военните и астрономията. Различно […]

Как да създадете уеб приложение на Access

Как да създадете уеб приложение на Access

Можете да създадете уеб приложение в Access 2016. И така, какво всъщност е уеб приложение? Е, уеб означава, че е онлайн, а приложението е просто съкращение от „приложение“. Персонализирано уеб приложение е онлайн приложение за база данни, достъпно от облака с помощта на браузър. Вие създавате и поддържате уеб приложението в настолната версия […]

Лента за бързо стартиране в SharePoint 2010

Лента за бързо стартиране в SharePoint 2010

Повечето страници в SharePoint 2010 показват списък с връзки за навигация в лентата за бързо стартиране в лявата част на страницата. Лентата за бързо стартиране показва връзки към представено съдържание на сайта, като списъци, библиотеки, сайтове и страници за публикуване. Лентата за бързо стартиране включва две много важни връзки: Връзка към цялото съдържание на сайта: […]

Какво означават съобщенията за грешка на Solver в Excel?

Какво означават съобщенията за грешка на Solver в Excel?

За прости проблеми Solver в Excel обикновено бързо намира оптималните стойности на променливата Solver за целевата функция. Но в някои случаи Solver има проблеми с намирането на стойностите на променливата Solver, които оптимизират целевата функция. В тези случаи Solver обикновено показва съобщение или съобщение за грешка, което описва или обсъжда проблема, който […]