Читаем VBA для чайников полностью

При таком представлении переменных можно говорить, что любое свойство хранит данные определенного типа точно так же, как переменная. Например, свойство, которое может принимать только два взаимоисключающих значения (True или False. Счастливый или Несчастный, Левый или Правый), имеет тип Boolean. Одни свойства являются строками, другие- целочисленными значениями, третьи- десятичными числами с дробной частью или плавающей запятой и т.д. Свойства могут быть и объектами. (О допустимых в VBA типах данных см. главу 7.)

Чтобы выяснить или, как говорится, получить текущее значение свойства, используйте свойство так, как будто это функция или процедура типа Function. А значит, присвойте это свойство некоторой переменной в своем программном коде. Переменная при этом должна иметь тот же тип, что и свойство, или, по крайней мере, иметь подходящий тип.

В следующем примере объект представляет собой, скажем, вопрос для вступительного экзамена. Свойство, значение которого выясняется здесь, описывает сложность вопроса по десятибалльной шкале;

Dim intСложность As Integer

intСложность = objЭкзаменационныйВопрос.УровеньСложности

Первый оператор объявляет переменную, которой будет присвоено текущее значение свойства, что и делает второй оператор.

Но для чего выяснять текущее значение свойства? Как правило, это значение используется в условных операторах и на его основе принимается решение о выполнении или невыполнении программой определенных действий. (В данном случае, например, это может быть если УровеньСложности вопроса выше 8 и если ответ правильный, то количество баллов за ответ удвоить".) Значение свойства удобно сохранить в переменной и тогда, когда нужно присвоить это значение такому же свойству другого подобного объекта.

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

If objЭкэаменационныйВопрос.УровеньСложности > 8 Then

int0бщееЧислоБаллов = intОбщееЧислоВаллов + _

(intЧислоБалловЗаОтвет *2)

End If

Такая практика удобна, но не забывайте, что частое обращение к свойствам объектов замедляет работу программы. Если значение некоторого свойства используется больше одного-двух раз, это значение лучше сохранить в переменной - VBA извлекает значение обычной переменной значительно быстрее, чем значение свойства.

Не забывайте, что свойства- это просто обремененные славой переменные. Поэтому свойствам можно присваивать значения точно так же, как обычным переменным, поместив в строке имя свойства слева, а значение - справа от знака равенства. В операторе objМузыкаМеталл.ФакторРаздражения = 999 значение свойства ФакторРаздражения- наверное, мера искажений, резонансов и всевозможных шумов - для объекта objМузыкаМеталл устанавливается равным 999:

objМузыкаМеталл.Мелодия = False

objМузыкаМеталл.Название = "У меня блохи. Плохо."

Многие объекты имеют свойство, выбираемое по умолчанию. Прочитать или установить значение такого свойства можно, указывая только имя объекта и не указывая имя самого свойства. Обратившись снова к предыдущему примеру, предположим, что для объекта objMyзыкaMeтaлл свойством по умолчанию является Название. Тогда последний оператор в примере можно записать проще:

objМузыкаМеталл = "У меня блохи. Плохо."

Использовать свойства по умолчанию удобно, конечно, когда вы точно знаете, какое именно свойство объекта выбирается по умолчанию. Если же вы сомневаетесь или предполагаете, что потом не удастся вспомнить, какое именно свойство выбирается по умолчанию, то лучше в таком случае напечатать имя свойства.

Как уже упоминалось в разделе "Установки свойств - это данные", свойство одного объекта может указывать на другой объект. Это дает возможность обращаться к дочерним объектам данного объекта-контейнера так, как будто дочерние объекты являются свойствами этого контейнера. Например, в выражении Toolbar.ToolbarItems

ToolbarItems - свойство объекта Toolbar, но значением этого свойства является объект ToolbarItems.

На самом деле именно такое использование свойств объектов является основным средством идентификации объектов для использования в программе (подробности приведены ниже, в разделе "Идентификация объекта для использования").

Перейти на страницу:

Все книги серии Для чайников

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных