Objeto ScopeFolder

Microsoft Office Objects

Objeto ScopeFolder

         
Varios objetos ScopeFolder
ScopeFolders

Corresponde a una carpeta en la que se pueden realizar búsquedas. Los objetos ScopeFolder pueden utilizarse con la colección SearchFolders. La colección SearchFolders define las carpetas que se buscan al utilizar el objeto FileSearch. Si desea buscar carpetas específicas puede utilizar los métodos y las propiedades del objeto SearchScope y de la colección ScopeFolders para recuperar los objetos ScopeFolder y agregarlos a la colección SearchFolders.

Utilizar el objeto ScopeFolder

Utilice la propiedad  ScopeFolder del objeto SearchScope para devolver el objeto ScopeFolder raíz de un ámbito de búsqueda, por ejemplo:

Set sf = Application.FileSearch.SearchScopes.Item(1).ScopeFolder

Utilice el método Item de la colección ScopeFolders para devolver una subcarpeta de un objeto ScopeFolder raíz, por ejemplo:

Set sf = Application.FileSearch.SearchScopes.Item(1).ScopeFolder.ScopeFolders.Item(1)

Utilice el método Item de la colección SearchFolders para devolver la carpeta que se buscará la próxima vez que se active el método Execute del objeto FileSearch; por ejemplo:

Set sf = Application.FileSearch.SearchFolders.Item(1)

En cada objeto ScopeFolder hay una colección ScopeFolders que contiene las subcarpetas del objeto ScopeFolder maestro. Puede atravesar toda la estructura de la carpeta de un ámbito de búsqueda, por ejemplo, todas las unidades locales, recorriendo las colecciones ScopeFolders y devolviendo todos los objetos ScopeFolder de nivel inferior. Un objeto ScopeFolder sin subcarpetas contiene una colección ScopeFolders vacía.

En el tema relativo a colección SearchFolders puede encontrar un ejemplo sobre cómo recorrer todos los objetos ScopeFolder de un ámbito de búsqueda.

Puede utilizar el método Add de la colección SearchFolders para agregar un objeto ScopeFolder a la colección SearchFolders, sin embargo, generalmente es más fácil utilizar el método AddToSearchFolders del ScopeFolder que desee agregar, ya que sólo existe una sola colección SearchFolders para todas las búsquedas.

En el tema relativo a la colección SearchFolders puede encontrar un ejemplo sobre cómo agregar un ScopeFolder a la colección SearchFolders.

El ejemplo siguiente muestra la ruta de acceso raíz a cada directorio de Mi PC. Para recuperar esta información, el ejemplo obtiene primero el objeto ScopeFolder de la raíz de Mi PC. La ruta de acceso a este objeto ScopeFolder será siempre "*". Como con todos los objetos ScopeFolder, el objeto raíz contiene una colección ScopeFolders. Este ejemplo recorre esta colección ScopeFolders y muestra la ruta de acceso a cada objeto ScopeFolder de la misma. Las rutas de acceso a estos objetos ScopeFolder serán "A:\", "C:\", etc.

Sub DisplayRootScopeFolders()

    'Declare variables that reference a
    'SearchScope and a ScopeFolder object.
    Dim ss As SearchScope
    Dim sf As ScopeFolder

    'Use a With...End With block to reference the
    'FileSearch object.
    With Application.FileSearch

        'Loop through the SearchScopes collection
        'and display all of the root ScopeFolders collections in
        'the My Computer scope.
        For Each ss In .SearchScopes
            Select Case ss.Type
                Case msoSearchInMyComputer

                    'Loop through each ScopeFolder object in
                    'the ScopeFolders collection of the
                    'SearchScope object and display the path.
                    For Each sf In ss.ScopeFolder.ScopeFolders
                        MsgBox "ScopeFolder object's path: " & sf.Path
                    Next sf

                Case Else
            End Select
        Next
    End With
End Sub