Abrir documento desde formulario access

Tengo la siguiente instrucción, la cual me abre un documento de Word, desde un botón de comando en un formulario de access:

rutaatestados = "G:\ESTADILLOS\AÑO 20" & Mid(NumAtEs, 5, 2) & "\" & txtFecha & ""

 Atestadover = Me.NumAtEs.Value

 rutacompleta = rutaatestados & "\" & Atestadover & ".doc"

 cmdVerAtestado.HyperlinkAddress = rutacompleta

Como veis con la extensión (doc), me han instalado el Word 2016 y a la hora de querer abrir el documento me salta error. He insertado lo siguiente:

  rutacompleta = rutaatestados & "\" & Atestadover & ".doc"  Or ".docx" 

Y me da error.

Que debería de hacer para que me leyera las extensiones del documento, o bien doc o docx

2 respuestas

Respuesta
1

Antonio, visto así no le veo problema. Por seguir tu ejemplo, tengo un archivo LugaresAVisitar.docx

Y un cuadro de texto en un formulario

Cuando pulso el botón

Y el código del botón es

Private Sub Comando78_Click()
Dim ruta As String
ruta = Texto76 & "\" & "Lugaresavisitar" & ".docx"
Application.FollowHyperlink ruta
End Sub

Gracias por contestar, veras lo que busco con la instrucción anterior es que me pueda abrir indistintamente un archivo de Word cuya terminación pueda ser en doc o docx.

Por ejemplo, el documento puede ser: 230223-1.doc, o 230223-1.docx.

Un saludo.

En ese caso podrías usar

Private Sub Comando103_Click()
Dim rutaA As String, rutaB As String
rutaA = "C:\users\gonza\documentos\laboratorioechevarne" & ".docx"
rutaB = "C:\users\gonza\documentos\laboratorioechevarne" & ".doc"
If Len(Dir(rutaA)) > 0 Then
Application.FollowHyperlink rutaA
Else
Application.FollowHyperlink rutaB
End If
End Sub

Es decir, primero comprueba si existe con la extensión docx y si no es así, la abre con la extensión doc

Respuesta
1

Tengo la sospecha de que has dañado parte del código (en la llamada al documento).

Si el fichero puede tener una de las dos terminaciones, la forma de llamar al correcto es verificar que existe, ello se hace con la función DIR que devuelve el nombre si lo localiza, nada en otro caso.

.- Se crea la ruta (sin las opciones) ---->>> ".Doc" <==> ".Docx"
.- Se hace un DIR con la ruta a la que se le añade la primera opción
.- Si la respuesta, no es una cadena vacía se ejecuta la llamada con esa opción  y [Fin]
.- (Opcional: verificar la segunda terminación)
.- Ejecutar la llamada con la segunda opción

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas