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.
На самом деле именно такое использование свойств объектов является основным средством идентификации объектов для использования в программе (подробности приведены ниже, в разделе "Идентификация объекта для использования").
Подобно тому, как свойства объекта указывают на подчиненные объекты, с помощью свойств можно выяснить, какому контейнеру принадлежит сам объект. Например, если в Visio в переменной хранится ссылка на объект Pages и вы хотели бы выяснить, к какому документ) она относится, то выражение Pages.Parent возвратит ссылку как раз на нужный документ. А если вам потребуется узнать, какому приложению принадлежит данный объект, то, как правило, можно пропустить все промежуточные ступени иерархии и обратиться сразу на самый верхний уровень с помощью свойства Application: Pages.Application.
Методы - это именованные действия, которые объект может выполнить по команде.
Ввиду того, что любой метод является неотъемлемой частью объекта, объект сам знает, что ему делать, когда вы вызываете метод.
Например, объект, задающий графический элемент, может иметь метод ReSize, изменяющий размеры, и метод Rotate, поворачивающий графический элемент на странице документа.
Объект, представляющий ячейку рабочего листа, может иметь метод Calculate, пересчитывающий значение в ячейке, и метод Clear, удаляющий ее содержимое. Объект, представляющий целый документ, скорее всего имеет методы Print (Печать) и Save (Сохранить).
Читать дальше