В момент создания задается имя
Листинг 1.52.
(html, txt)
В момент создания задается имя переменной и, возможно, инициализирующее ее значение. Тип, как я уже говорил, установлен по умолчанию.
Вот несколько процедур, демонстрирующих работу с такими переменными. В частности, я показываю возможность отключения демо версии системы после завершения разрешенного числа запусков. Начнем с процесса создания переменной, являющейся счетчиком, следящим за числом запусков. Взгляните на соответствующую процедуру и вызываемую в ней функцию:
Public Sub CreateVar() 'Создание переменных - хранителей информации With ActiveDocument.Variables If Not ExistVar("Counter") Then 'Добавляем переменную .AddName:="Counter", Value:=0 End If End With
End Sub
Public Function ExistVar(Name As String) As Boolean 'Определяет наличие переменнойName в коллекции Variables Dim MyVar As Variable ExistVar = False For Each MyVar In ActiveDocument.Variables If MyVar.Name =Name Then ExistVar = True: Exit For End If Next MyVar End Function
Листинг 1.53.
(html, txt)
При попытке повторного добавления одной и той же переменной в коллекцию Variables возникает ошибка. В тоже время процедура, в которой происходит добавление, может выполняться многократно. Поэтому я предусматриваю соответствующую проверку на существование переменной с заданным именем в коллекции Variables. Может возникнуть вопрос, куда поместить процедуру CreateVar, создающую переменную. Я поместил ее в процедуру, обрабатывающую событие "Open" документа, но можно упрятать этот вызов и более глубоко. Рассмотрим теперь, как происходит работа с переменной Counter:
Public Sub CheckCounter() Const Limit = 10 'Счетчик Counter может быть использован в любой процедуре, 'позволяя следить за числом ее выполнения With ActiveDocument If .Variables("Counter") > Limit Then 'Исчерпан лимит нормальной работы демо-версии Call MsgBox("Исчерпан лимит работы демо-версии", _ vbCritical, "Конец работы!") Else ' продолжаем нормальную работу Dim myLocal As Integer 'Локальные переменные могут работать с глобальным счетчиком myLocal = .Variables("Counter") Debug.Print "Счетчик = "; myLocal
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий