Seleccionar un fichero al abrir una carpeta desde un formulario

Otra vez!

Me da mucha pena con Ud. Volver a preguntarle, pero llevo algunos días buscando información acerca de como seleccionar un fichero desde una carpeta.

Le explico es para la misma base de datos, lo que pasa es que tengo varios campos en algunos formularios como es en FrTFC y FrTFT, que son hipervínculos a archivos .pdf, entonces quisiera insertar un botón al costado de estos campos en el formulario que al pinchar me abra una carpeta, en donde estarán los archivos pdf, y al seleccionar sobre ellos se inserte en el campo el nombre elegido.

No se si es posible hacer eso.

Le agradezco de antemano su respuesta y otra vez disculpe por las molestias.

1 respuesta

Respuesta
2

Que explica paso a paso lo que tienes que hacer:

<a>http://siliconproject.com.ar/neckkito/index.php/ejemplos-explicados/todos/95-ejemplos-explicados/ejemplos-de-codigo/131-quiero-navegar-y-seleccionar-un-archivo</a>

En tu caso tendrás que poner tantos botones con su código como campos a rellenar por este método tengas. El código del módulo sólo tienes que ponerlo una vez.

Lo que sí tendrás que cambiar los nombres del campo en cada botón.

Si no te sale y necesitas ayuda, coméntamelo.

Es Ud. muy amable y muchas gracias, es lo que buscaba.

Hice todo lo que sugiere el manual, pero me surge un problema, parece que es por el módulo que cree, me dice Error de compilación:No se ha definido el tipo definido por el usuario, y se abre el módulo (la verdad no consigo entender del todo el código del módulo) y me resalta las dos primeras líneas del módulo:

Public Function buscaArchivo() As String
Dim fDialog As Office.FileDialog

Set fDialog = Application.FileDialog(msoFileDialogFilePicker)
With fDialog
.AllowMultiSelect = False
.ButtonName = "Seleccionar"
.Title = "Seleccionar el archivo"
.InitialFileName = Application.CurrentProject.Path
.InitialView = msoFileDialogViewDetails
.Filters.Clear
.Filters.Add "All Files", "*.*"
If .Show = True Then
buscaArchivo = .SelectedItems(1)
Else
MsgBox "Ha pulsado el botón <Cancelar>."
End If
End With
End Function

cuando creo el botón le genero el código de la siguiente manera y lo relaciono con InformeTutor:

Private Sub cmdNavegar_Click()
Dim vArchivo As String
'Asignamos el valor de la variable al archivo que seleccionemos al navegar.
'Para ello utilizamos la llamada a la función buscaArchivo
vArchivo = buscaArchivo()
'Una vez tenemos el archivo seleccionado (junto con su ruta completa) pasamos
'el valor al campo Archivo
If IsNull(vArchivo) Or vArchivo = "" Then
Exit Sub
Else
Me.InformeTutor.Value = vArchivo
End If
End Sub

espero pueda ayudarme.

Gracias Sveinbjorn, por su tiempo y paciencia.

Un saludo

Por lo que dices, no realizaste el paso 7, tienes que registrar esa referencia.

Si realicé el paso 7, marqué el check de esa librería y acepté, lo vuelto a corroborar y si esta activada.

Perdona Sveinbjorn, tenia razón, no leí bien, lo leí tan rápido que no me percaté que dice Microsoft Office 12.0 Object Library y yo marqué Microsoft Access 12.0 Object library, que vergüenza con Ud.

Lo siento y muchas gracias por su paciencia.

Un saludo y gracias por todo

Je je, a veces pasa lo de leer rapido.

Si ya esta solucionado y no necesitas nada mas, finaliza la pregunta.

Si está solucionado el problema, le agradezco su ayuda, muchas gracias, como siempre Ud. me ha dado la solución exacta

Un saludo cordial y espero (si no es mucha molestia) contar con su apoyo en otra ocasión.

Gracias!!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas