VBProjects. События объектов Document и Application. Автомакросы

Листинг 17. Использование счетчика

Листинг 16. Создание счетчика

Пример

Коллекция Variables

С каждым из документов можно связать коллекцию переменных типа Variant Variables (Variable). Время жизни входящих в нее переменных совпадает со временем жизни документа. По существу речь идет о некотором специальном файле переменных, жестко связанном с самим документом и хранящимся вместе с ним. Таким образом, появляется возможность сохранять информацию о работе в документе между сеансами.

Переменные, входящие в коллекцию Variables, создаются не как обычные переменные – их не надо описывать в разделе объявлений какого-либо модуля. Они имеют фиксированный тип Variant и создаются методом Add, который имеет синтаксис:

Function Add(Name As String, [Value]) As Variable

В момент создания задается имя переменной и, возможно, инициализирующее ее значение.

Необходимо предусмотреть отключение демо-версии системы после выполнения разрешенного количества запусков. Для решения данной задачи используются две процедуры. Первая (см. листинг 16 (см. здесь)) создает переменную Counter и задает ее начальное значение. Во второй процедуре (см. листинг 17(см. здесь)) эта переменная используется, увеличиваясь на единицу при каждом вызове.

Public Sub VarCreate() Documents("Doc.doc").Activate ActiveDocument.Variables.Add Name:="Counter", Value:=0 Debug.Print ActiveDocument.Variables.CountEnd SubPublic Sub VarUse() ‘Использование переменной Counter, как счетчика ‘вхождений в процедуру Documents("Doc.doc").Activate Dim myLocal As Variant ‘Локальной переменной присваиваем значение "глобального" счетчика myLocal = ActiveDocument.Variables("Counter") Debug.Print "Значение счетчика Counter =", myLocal myLocal = myLocal + 1 ActiveDocument.Variables("Counter") = myLocalEnd Sub

При открытии документа Word одновременно открываются два проекта, связанные с документом. Один – Normal – стандартный проект, общий для всех документов, а второй – отражает специфику документа. Поскольку одновременно может быть открыто несколько документов, может быть открыто и несколько проектов. Открытые проекты составляют коллекцию VBProjects. Эта коллекция имеет единственный метод – Item. У элементов этой коллекции VBProjects – объектов класса VBProject – нет методов и есть только свойства. Свойство-участник VBComponents возвращает компоненты проекта: модули, классы и формы, входящие в проект, да и сам проект тоже. Свойство References позволяет получить доступ к коллекции ссылок, на элементы, доступные из данного проекта. Элементы этой коллекции соответствуют ссылкам, отображаемым в пункте Ссылки (References) меню Tools. Терминальные свойства объекта VBProject позволяют выяснить или установить свойства проекта, такие, как статус проекта и статус его защиты.