Macro botón examinar excel

Tengo una macro en la cual yo le doy una ruta y me busca todos lo archivos .dbf que hay en esa carpeta. Lo que quiero es que al ejecutar la macro me aparezca un dialogo examinar, y busco la carpeta en la que quiero buscar.
Lo que he encontrado es "application.getfile" pero me busca archivo, no carpeta

5 Respuestas

Respuesta
1
Para elegir archivos, directorios, impresoras... tienes el magnifico FILEDIALOG:
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFolderPicker)
fd.AllowMultiSelect = False
fd.Title = "Seleccione la carpeta de Facturas de SAT"
Dim ruta As String
If fd.Show = -1 Then
    Sheets("CONFIG.").Cells(7, "C").Value = fd.SelectedItems(1)
End If
Set fd = Nothing
' tambien filedialog tiene la propiedad para establecer la ruta inicial
' deberas cambiar la instruccion dentro del if, para usar el valor devuelto por el filedialog de forma adecuada, yo lo que hacia era poner el valor en una celda, adecúalo a tus necesidades.
Hola, muchísimas gracias
Ahora si yo no doy ruta ninguna, en vez de que me salga el típico mensaje de error de visual, quiero meter un else o if, kn un exit para que salga de la macro sin acer nada, pero no se si exit se puede usar, o que sentencia he de usar
Gracias de nuevo
No entiendo tu pregunta, ¿cuándo te sale un error?, si no eligues nada y le das al botón aceptar, te pone el directorio donde se abre el filedialog por defecto, (creo que la carpeta mis documentos), para no elegir nada solo hay que darle al botón cancelar
Respuesta
1
Inserta un CommonDialog en algún formulario ya existente o en uno nuevo.
Si no tienes el control CommonDialog, agregalo en tu cuadro de herramientas. (Botón derecho sobre cuadro de herramientas y seleccionas el "Microsoft Common Dialog control ...").
Una ves que tengas el commondialog en tu cuadro de herramientas lo insertas en tu formulario.
Luego inserta un CommandButt (botón comando), y hace botón le asignas el siguiente código.
CommonDialog1. ShowOpen
Respuesta
Descárgate el archivo que se llama "ABRE DIRECTORIO" o algo así es gratis, entra en mi pagona
Respuesta
Mil disculpas por la demora, estaba de viaje y no había podido contestar ninguna pregunta. En si como cuadro de dialogo especifico para carpetas no lo hay en vba, pero lo que puedes hacer es que la persona escoja cualquier archivo dentro de la carpeta, y con la ruta del archivo preguntas por la carpeta superior.
Con la función " parentfolder "
Lo otro seria que hicieras un formulario con un control treeview, y lo alimentaras con las carpetas especificas, pero es un poco complicado.
Si tienes dudas comentame y te respondo .
Respuesta
-1
Lamentablemente no tengo la respuesta a tu consulta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas