Основы офисного программирования и документы Word


Поиск файлов - часть 3


Как видите, многие критерии поиска можно задать, установив требуемые значения свойств объекта FileSearch. Однако этот объект имеет и другой, более общий способ задания критериев. Дело в том, что среди свойств этого объекта есть свойство PropertyTests, возвращающее одноименную коллекцию, элементами которой являются объекты класса PropertyTest. Каждый из этих объектов задает один критерий поиска, а вся коллекция в целом - сложный критерий поиска, элементы которого объединены логическими операциями конъюнкции и дизъюнкции. При задании свойств объекта FileSearch автоматически формируются элементы коллекции PropertyTests. Но эта коллекция имеет и собственный метод Add, позволяющий добавлять новые критерии. Возникает коллизия - пересечение со свойствами, поскольку одни и те же критерии можно задать, используя свойства объекта FileSearch, либо метод Add коллекции PropertyTests. Я рекомендую в таких ситуациях использовать свойства. Достоинство метода Add состоит в том, что можно добавлять новые критерии поиска, не вводя новых свойств объекта FileSearch. Давайте рассмотрим небольшую процедуру AddCriteria, добавляющую критерии поиска и вызываемую в нашем примере:

Public Sub AddCriteria() 'Добавление критериев поиска файлов With Application.FileSearch 'Первый критерий .PropertyTests.Add name:="Дата создания", _ Condition:=msoConditionAnytimeBetween, _ Value:="1/10/1999", SecondValue:="1/06/2000" 'Второй критерий .PropertyTests.Add name:="Размер", _ Condition:=msoConditionMoreThan, _ Value:=200000, Connector:=msoConnectorOr

End With End Sub

Листинг 5.2.

(html, txt)

У метода Add пять параметров:

  • Name - задает имя критерия. Оно должно принадлежать фиксированному набору возможных критериев. Для добавления новых критериев поиска достаточно просто расширить набор возможных имен.
  • Condition - задает одно из возможных условий для данного критерия. Каждому критерию соответствует свой набор условий, задаваемых соответствующими константами.
  • Value - задает значение условия. Тип значения зависит от используемого условия.
  • SecondValue - некоторые условия требуют задания двух значений, как правило, определяющих границы интервала возможных значений.
  • Connector - этот параметр имеет два возможных значения и определяет логическую связку "И" или "ИЛИ", используемую при добавлении критерия к общему условию поиска.




Начало  Назад  Вперед