MASTERCARD PAYONEER |
La Application.GetOpenFilename abre el cuadro de dialogo de Windows o explorador de archivos de Windows, con este método lo que se hace es obtener la dirección del archivo que se selecciona o el nombre escrito por el usuario, pero no se abre ningún archivo, como sucede con cualquier programa; en otras palabras y ejemplificando; supongamos que en Excel se selecciona el archivos y luego el menú abrir, aparece el explorador de archivos de Windows, pero si nosotros hacemos click en algún archivo, en este caso de Excel, se abre el archivo; con Application.GetOpenFilename el archivo no se abre, sino que solo se obtiene su dirección, que puede ser puesta en una variable y usado por la macro.
La sintaxis es la siguiente:
expresión.GetOpenFilename(FileFilter, FilterIndex, Title, ButtonText, MultiSelect)
Expresión: es una variable que representa un objeto Application, es obligatorio.
FileFilter: puede ser opcional, es una cadena que especifica los criterios de filtrado de archivos.
FilterIndex: es opcional, es el número de índice de los criterios de filtrado de archivos va desde 1 hasta el número de filtros especificado por FileFilter, si se omite, se usa el primer filtro de archivo.
Title: también es opcional, especifica el Titulo que tendrá el cuadro de diálogo, si se omite será por defecto «Abrir» el titulo.
ButtonText: es opcional, se usa solo en Macintosh, no nos ocuparemos de él.
MultiSelect: es opcional, pero importante ya que en muchos casos se querrá seleccionar más de un archivo a la vez; el valor True permite seleccionar varios nombre de archivo y False solo se permite un nombre, si se omite este argumento toma el valor predeterminado o por defecto False, el valor devuelto es de tipo Variant como en todos los argumentos de este método.
Antes de seguir con el desarrollo y en el caso que no tengas conocimiento suficiente sobre el manejo de hojas de Excel, te recomiendo antes de introducirte en el mundo de las macros, que leas un excelente libro sobre Excel el que te ayudará manejar las planillas de cálculo, debes hacer click acá, si quieres un libro sobre Excel, en inglés, entonces debes hacer click acá.
de filtros de archivos seguidas de la especificación de filtro de archivo
comodín de MS-DOS, separados cada par y cada parte por comas. Se enumera cada
par individual en el cuadro de lista desplegable Tipo de
archivo. Por ejemplo, la siguiente cadena especifica dos filtros de
archivos, texto y complementos: «Archivos de texto (*.txt),*.txt,Archivos de
complementos (*.xla),*.xla»; para que puedas entender más a fondo lo expuesto, sugiero que se bajes el archivo desde el link del final, veas su funcionamiento y codificación.
filtro de archivo, se debe separar dichas expresiones con «;» (punto y coma); ejemplo, «Archivos de Excel (*.xl*; *.txt),*.xl*;*.txt»; en este caso se filtran todos los archivos de Excel y Texto, aquí se agrega como filtro *.xl*, siendo * (comodin), en este caso se filtran los fichero cuyo nombre de archivo sea cualquiera, es decir todos los archivos y la extensión empiece con «.xl» sea cual fuere los siguientes caracteres, con esto se filtra la mayoría de los formatos de puede generar Excel, es decir extensión:
.xlsx: formato predeterminado para archivos de Excel posteriores a versión 2007.
.xlsm: formato para archivos de Excel que contengan macros.
.xlsb: formato para archivos binarios.
.xltx: formato de archivos para plantillas en versiones de Excel posteriores a versión 2007.
.xltm: formato de archivos para plantillas con macros en versiones de Excel posteriores a versión 2007.
.xls: formato de archivo Excel en versiones de Excel 97 a 2003.
.xlt: formato de archivo para plantillas en versiones de Excel 97 a 2003.
.xlam: formato de archivo de complemento en versiones posteriores a la versión 2007.
.xla: formato de complemento en versiones Excel 97 a 2003.
.xlw: formato de archivos de Excel en versión 4.0.
En caso que se omita el parámetro FileFilter, se tomá el valor por defecto que es «Todos los archivos (*.*),*.*».
Desde el link del final se puede descargar el archivo de ejemplo de esta manera podrás ver su funcionamiento en forma más detallada. El código de VBA o Macro de Excel abre el explorador de archivos de Windows ó cuadro de diálogo de Windows para abrir archivos, en los siguientes códigos se muestra la forma de utilizar Application.GetOpenFilename; principalmente la forma de filtrar archivos y seleccionar varios archivo con multiselect.
Código que se debe insertar en Módulo de la hoja donde haremos correr la macro.
En el siguiente vídeo podrás observar un explicación de como funcionan las macros que se incorporan es este ejemplo:
Código que filtra todos los archivos
Sub AbreExploradorTodos()
myfile = Application.GetOpenFilename()
Cells(2, 2) = myfile
End Sub
Código que filtra archivos de Excel
Sub AbreExploradorExcel()
myfile = Application.GetOpenFilename(«Archivos Excel (*.xl*), *.xl*»)
Cells(3, 2) = myfile
End Sub
Código que filtra archivos de Word
Sub AbreExploradorWord()
myfile = Application.GetOpenFilename(«Archivos Word (*.doc*), *.doc*»)
Cells(4, 2) = myfile
End Sub
Código que filtra archivos Txt
Sub AbreExploradorTexto()
myfile = Application.GetOpenFilename(«Archivos de Texto (*.txt*), *.txt*»)
Cells(5, 2) = myfile
End Sub
Código que filtra archivos JPG
Sub AbreExploradorJPG()
myfile = Application.GetOpenFilename(«Archivos de Imagenes (*.jpg*), *.jpg*»)
Cells(6, 2) = myfile
End Sub
Código que filtra archivos PDF
Sub AbreExploradorPdf()
myfile = Application.GetOpenFilename(«Archivos PDF (*.pdf*), *.pdf*»)
Cells(7, 2) = myfile
End Sub
Código que filtra archivos de Word, Excel y PDF a la vez
Sub AbreExploradorWordExcelPdf()
myfile = Application.GetOpenFilename(«Archivos Word Excel PDF (*.doc*;*.xls*;*.pdf*), *.doc*;*.xls*;*.pdf*»)
Cells(8, 2) = myfile
End Sub
Código que filtra archivos JPG, PNP y BMP a la vez
Sub AbreExploradorJpgPngBmp()
myfile = Application.GetOpenFilename(«Archivos JPG PNG BMP (*.jpg*;*.png*;*.bmp*), *.jpg*;*.png*;*.bpm*»)
Cells(9, 2) = myfile
End Sub
Código que aplica un título al cuadro de diálogo
Sub AbreExploradorTitle()
myfile = Application.GetOpenFilename(«Archivos Excel (*.xls*), *.xls*», , «SELECCIONE ARCHIVO PARA EJECUTAR LA MACRO DE VBA»)
Cells(10, 2) = myfile
End Sub
Código que permite seleccionar varios archivos a la vez, MULTISELECT
Sub AbreExploradorMultiselect()
myfile = Application.GetOpenFilename(«Archivos Excel (*.xls*), *.xls*», , , , True)
If TypeName(myfile) = «Boolean» Then Exit Sub
file = 11
For i = LBound(myfile) To UBound(myfile)
Cells(file, 2) = myfile(i)
file = file + 1
Next i
End Sub
Otros post de utilidad:
Recorrer filas y contar celdas con datos
Recuperar password o contraseña de hoja bloqueada
Combobox incrustado en Excel
Formulario para insertar datos en hoja de excel
Tutoriales sobre VBA
Llenar combobox y buscar datos
Mensaje de Alerta y envío de mail con Excel
Combobox que lista hojas de excel y las selecciona
.
If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.
Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends