Cómo utilizar el método GetOpenFilename en Excel 2016 VBA

Cómo utilizar el método GetOpenFilename en Excel 2016 VBA

Si su procedimiento de VBA necesita pedirle al usuario un nombre de archivo, puede usar la función InputBox y dejar que el usuario de Excel escriba un poco. Sin embargo, un cuadro de entrada no suele ser la mejor herramienta para este trabajo, porque a la mayoría de los usuarios les resulta difícil recordar rutas, barras diagonales inversas, nombres de archivo y extensiones de archivo. En otras palabras, es demasiado fácil equivocarse al escribir un nombre de archivo.

Para una mejor solución a este problema, use el método GetOpenFilename del objeto Application, que asegura que su código tenga en sus manos un nombre de archivo válido, incluida su ruta completa. El método GetOpenFilename muestra el conocido cuadro de diálogo Abrir (un timbre muerto para el cuadro de diálogo Excel se muestra cuando elige Archivo → Abrir → Examinar).

El método GetOpenFilename en realidad no abre el archivo especificado. Este método simplemente devuelve el nombre de archivo seleccionado por el usuario como una cadena. Luego, puede escribir código para hacer lo que quiera con el nombre del archivo.

La sintaxis del método GetOpenFilename

La sintaxis oficial del método GetOpenFilename es la siguiente:

object.GetOpenFilename ([fileFilter], [filterIndex],
  [título], [buttonText], [multiSelect])

El método GetOpenFilename toma los siguientes argumentos opcionales.

Argumento Que hace
FileFilter Determina los tipos de archivos que aparecen en el cuadro de diálogo
(por ejemplo, * .TXT). Puede especificar varios filtros para que el usuario
elija.
FilterIndex Determina cuál de los filtros de archivo muestra el cuadro de diálogo de
forma predeterminada.
Título Especifica el título de la
barra de título del cuadro de diálogo .
Botón de texto Ignorado (usado solo para la versión Macintosh de Excel).
Selección múltiple Si es Verdadero, el usuario puede seleccionar varios archivos.

Un ejemplo de GetOpenFilename

El argumento fileFilter determina lo que aparece en la lista desplegable Archivos de tipo del cuadro de diálogo. Este argumento consta de pares de cadenas de filtro de archivo seguidas de la especificación de filtro de archivo comodín, con comas que separan cada parte y par. Si se omite, este argumento tiene como valor predeterminado lo siguiente:

Todos los archivos (*.*), *.*

Tenga en cuenta que esta cadena consta de dos partes, separadas por una coma:

Todos los archivos (*.*)

y

*. *

La primera parte de esta cadena es el texto que se muestra en la lista desplegable Archivos de tipo. La segunda parte determina qué archivos muestra el cuadro de diálogo. Por ejemplo, *. * Significa todos los archivos.

El código del siguiente ejemplo abre un cuadro de diálogo que solicita al usuario un nombre de archivo. El procedimiento define cinco filtros de archivo. Observe que la secuencia de continuación de línea de VBA se usa para configurar la variable de filtro; hacerlo ayuda a simplificar este argumento bastante complicado.

Sub GetImportFileName ()
  Dim Finfo como cadena
  Atenuar FilterIndex tan largo
  Título atenuado como cadena
  Dim FileName como variante
'Configurar lista de filtros de archivos
  FInfo = "Archivos de texto (* .txt), *. Txt," & _
      "Archivos de Lotus (* .prn), *. Prn," & _
      "Archivos separados por comas (* .csv), *. Csv," & _
      “Archivos ASCII (* .asc), *. Asc,” & _
      "Todos los archivos (*.*),*.*"
'Mostrar *. * Por defecto
  FilterIndex = 5
'Establecer el título del cuadro de diálogo
  Título = "Seleccione un archivo para importar"
'Obtener el nombre del archivo
  FileName = Application.GetOpenFilename (FInfo, _
    FilterIndex, Título)
'Manejar información de devolución desde el cuadro de diálogo
  Si FileName = False, entonces
    MsgBox "No se seleccionó ningún archivo".
  Demás
    MsgBox "Seleccionaste" & FileName
  Terminara si
End Sub

Aquí está el cuadro de diálogo que muestra Excel cuando ejecuta este procedimiento. La apariencia puede variar, según la versión de Windows que utilice y las opciones de visualización que haya configurado.

Cómo utilizar el método GetOpenFilename en Excel 2016 VBA

El método GetOpen Filename muestra un cuadro de diálogo personalizable y devuelve la ruta y el nombre del archivo seleccionado. No abre el archivo.

En una aplicación real, haría algo más significativo con el nombre del archivo. Por ejemplo, es posible que desee abrirlo mediante una declaración como esta:

Workbookss.Open FileName

Observe que la variable FileName se declara como un tipo de datos Variant. Si el usuario hace clic en Cancelar, esa variable contiene un valor booleano (Falso). De lo contrario, FileName es una cadena. Por lo tanto, el uso de un tipo de datos Variant maneja ambas posibilidades.


Hoja inteligente 9.1.1

Hoja inteligente 9.1.1

Smartsheet es una plataforma de trabajo dinámica que le permite gestionar proyectos, crear flujos de trabajo y colaborar con su equipo.

Compartirpunto

Compartirpunto

SharePoint es un sistema de colaboración basado en web que utiliza una variedad de aplicaciones de flujo de trabajo, bases de datos de "listas" y otros componentes web, así como funciones de seguridad para dar control a los grupos empresariales que trabajan juntos.

Calendario perpetuo 1.0.38/1.0.36

Calendario perpetuo 1.0.38/1.0.36

Van Nien Calendar es una aplicación de visualización de calendario en su teléfono, que le ayuda a ver rápidamente la fecha lunisolar en su teléfono, organizando así su importante trabajo.

Outlook 2021

Outlook 2021

Microsoft Outlook es una aplicación empresarial y de productividad desarrollada por Microsoft Corporation.

Haga clic arriba

Haga clic arriba

ClickUp es una de las plataformas de productividad mejor calificadas para cualquier empresa. Grandes empresas como Google, Booking.com, San Diego Padres y Uber utilizan ClickUp para aumentar la productividad en el lugar de trabajo.

Visor de PDF-XChange 2.5.322.10

Visor de PDF-XChange 2.5.322.10

PDF se ha convertido en un formato de uso común para leer, crear y enviar documentos de texto. A su vez, se ha producido un aumento en el número de programas utilizados para este tipo de documentación. PDF-XChange Viewer se encuentra entre un número creciente de visores de PDF.

Apache OpenOffice

Apache OpenOffice

Apache OpenOffice ofrece un conjunto completo de aplicaciones de Office que rivalizan con Microsoft 365, especialmente en Excel, PowerPoint y Word. Le permite gestionar sus proyectos de forma más eficaz y admite varios formatos de archivo.

Descargar iTaxviewer 1.8.7

Descargar iTaxviewer 1.8.7

El software iTaxViewer es el software de lectura de archivos XML más popular en la actualidad. Este software es una aplicación de lectura de declaraciones electrónicas de impuestos en formato XML de la Dirección General de Tributación.

Lector de PDF Nitro

Lector de PDF Nitro

Nitro PDF Reader es un práctico editor de PDF que cubre todas las tareas básicas que la mayoría de las personas realizan todos los días con documentos PDF.

Lector Foxit 12

Lector Foxit 12

Foxit Reader es principalmente un lector de PDF y también le permite crear archivos PDF, firmarlos, editarlos y agregar anotaciones. Funciona en sistemas operativos, existen complementos para varios programas del paquete Microsoft Office.