Objeto FileDialog

Microsoft Office Objects

Objeto FileDialog

         
FileDialog Varios objetos

Proporciona funciones de cuadros de diálogo de archivos similares a las de los cuadros de diálogo Abrir y Guardar estándares de las aplicaciones de Microsoft Office. Con estos cuadros de diálogo, los usuarios de las soluciones pueden especificar fácilmente los archivos y las carpetas que deberá utilizar la solución.

Utilizar el objeto FileDialog

Utilice la propiedad FileDialog para devolver un objeto FileDialog. La propiedad FileDialog se encuentra en cada objeto Application de las aplicaciones de Office. La propiedad toma un solo argumento, DialogType, que determina el tipo de objeto FileDialog que devuelve la propiedad. Existen cuatro tipos de objeto FileDialog:

  • Cuadro de diálogo Abrir: permite al usuario seleccionar uno o varios archivos que puede abrir a continuación en la aplicación host mediante el método Execute.
  • Cuadro de diálogo Guardar como: permite al usuario seleccionar un solo archivo, con cuyo nombre se puede, a continuación, guardar el archivo actual mediante el método Execute.
  • Cuadro de diálogo Selector de archivos: permite al usuario seleccionar uno o varios archivos. Las rutas de acceso a archivos que el usuario selecciona se capturan en la colección FileDialogSelectedItems.
  • Cuadro de diálogo Selector de carpetas: permite al usuario seleccionar una ruta de acceso. La ruta de acceso que el usuario selecciona se captura en la colección FileDialogSelectedItems.

Cada aplicación host sólo puede realizar una sola repetición del objeto FileDialog. Por lo tanto, muchas de las propiedades del objeto FileDialog se conservan incluso al crear varios objetos FileDialog. Por consiguiente, asegúrese de haber establecido correctamente todas las propiedades antes de mostrar el cuadro de diálogo.

Para mostrar un cuadro de diálogo de archivos mediante el objeto FileDialog, deberá utilizar el método Show. Una vez que se muestra el cuadro de diálogo, no se ejecutará ningún código hasta que el usuario lo cierre. El ejemplo siguiente crea y muestra un cuadro de diálogo Selector de archivos y, a continuación, muestra cada archivo seleccionado en un cuadro de mensaje.

Sub Main()

    'Declare a variable as a FileDialog object.
    Dim fd As FileDialog

    'Create a FileDialog object as a File Picker dialog box.
    Set fd = Application.FileDialog(msoFileDialogFilePicker)

    'Declare a variable to contain the path
    'of each selected item. Even though the path is a String,
    'the variable must be a Variant because For Each...Next
    'routines only work with Variants and Objects.
    Dim vrtSelectedItem As Variant

    'Use a With...End With block to reference the FileDialog object.
    With fd

        'Use the Show method to display the File Picker dialog box and return the user's action.
        'The user pressed the action button.
        If .Show = -1 Then

            'Step through each string in the FileDialogSelectedItems collection.
            For Each vrtSelectedItem In .SelectedItems

                'vrtSelectedItem is a String that contains the path of each selected item.
                'You can use any file I/O functions that you want to work with this path.
                'This example simply displays the path in a message box.
                MsgBox "The path is: " & vrtSelectedItem

            Next vrtSelectedItem
        'The user pressed Cancel.
        Else
        End If
    End With

    'Set the object variable to Nothing.
    Set fd = Nothing

End Sub