** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Otros de Microsoft: Windows y Office > Word
  Mensajes nuevos Mensajes nuevos RSS - Combinacion Access-Word con un marcador.
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoCombinacion Access-Word con un marcador.

 Responder Responder
Autor
Mensaje
Antonio Pedro Ver desplegable
Asiduo
Asiduo


Unido: 13/Diciembre/2005
Estado: Sin conexión
Puntos: 308
Enlace directo a este mensaje Tema: Combinacion Access-Word con un marcador.
    Enviado: 14/Julio/2019 a las 15:20
Un saludo para Todos.

Tengo un formulario que me hace una combinación Access con Word, me genera un documento Word que guardo en la siguiente ruta: C:\ATESTADOS\COMPARECENCIA, la instrucción que tengo es esta:

docWord.SaveAs "C:\ATESTADOS\COMPARECENCIAS\" & Forms!FComparecencia!Texto86 & ".doc"

Texto86 es el número que le inserto al documento que me genera. Por poner un ejemplo me genera el siguiente documento: 001-19, hasta aquí todo bien.

Pero ahora viene la vuelta de tuerca y donde pido ayuda o alguna sugerencia.

Ahora realizo otra combinación de Access con Word, en el documento que se me genera tengo insertado un marcador (Inic7),  lo que pretendo ahora es que en ese marcador se me inserte el documento que genere anteriormente es decir el 001-19. Para eso utilizo esta instrucción, pero lo que  no se es que debo de poner en XXX para que sea el documento 001-19 el que se me inserte, lo mismo que he dicho 001, puede ser  otro número que genere en la instrucción anterior.

If Forms!FDatoshechos!Marco135 = 1 And Forms!FDatoshechos!Marco164 = 1 Then

mfitxer = "C:\ATESTADOS\COMPARECENCIAS\XXXX.doc"

appword.Application.selection.GoTo Name:="Inic7"

appword.Application.selection.InsertFile FileName:=mfitxer, Range:="", ConfirmConversions:=False, Link:=False, Attachment:=False

Else

appword.Application.selection.GoTo Name:="Inic7"

appword.Application.selection.Text = ""

End If

appword.Application.selection.HomeKey Unit:=6

 

Todas estas instrucciones se las debo a prga,  si pudiera ayúdame se lo agradecería.

Espero que no  haya sido muy lioso en la explicación. Un saludo.

Arriba
prga Ver desplegable
Moderador
Moderador


Unido: 16/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 3523
Enlace directo a este mensaje Enviado: 15/Julio/2019 a las 10:04
Hola.
Una pregunta, ¿La segunda combinación se hace inmediatamente después de que se hace la primera?. Vamos un código a continuación del otro.
Otra pregunta: En el ejemplo dado ¿ el fichero a "cargar" sería el 001-19.doc?
Ya comentas
Un saludo a todos
Arriba
Antonio Pedro Ver desplegable
Asiduo
Asiduo


Unido: 13/Diciembre/2005
Estado: Sin conexión
Puntos: 308
Enlace directo a este mensaje Enviado: 15/Julio/2019 a las 21:18
Hola prga, y en primer lugar darte las gracias por responder, te comento las preguntas que me formulas:
En cuanto a la primera pregunta comentarte que no.
Te comento lo que pretendo y si se puede: Tomo la comparecencia y la guardo en la C:ATESTADOS\COMPARECENCIA, por ejemplo como dije 001-19. A continuación relleno el Atestado y hago la combinación Access-Word, dentro del documento que se me genera inserte un marcador, lo que pretendo es como asignarle a la instrucción  para que me escoja ese numero de comparecencia. 
Imagínate ahora que tomo otra comparecencia 002-19 y vuelvo ha realizar todo lo anterior, como haría para que me escogiera ese numero de comparecencia, y así sucesivamente.

Espero que no resulte un poco lioso lo que pretendo, es solo si se puedo o hay alguna otra posibilidad.
Nuevamente un Saludo.  
Arriba
prga Ver desplegable
Moderador
Moderador


Unido: 16/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 3523
Enlace directo a este mensaje Enviado: 17/Julio/2019 a las 15:42
Hola.
Posibles soluciones:
Sí sabemos el valor de la xxx( podría ser el valor de Forms!FComparecencia!Texto86 o cualquier otra variable que tenga ese valor)
 mfitxer = "C:\ATESTADOS\COMPARECENCIAS\" & Forms!FComparecencia!Texto86 & ".doc"

Si NO sabemos ese valor, habrá que buscar el fichero en la carpeta de comparecencias, para eso utilizaremos el "filedialog":
En cualquier módulo colocaremos la siguiente o similar función:

Public Function buscafitxer(Optional midirec As String)
 Dim dlgOpen As Object
 Set dlgOpen = Application.FileDialog(1) 'msoFileDialogOpen)
If midirec = "" Then
 midirec = CurrentProject.Path
End If
 dlgOpen.AllowMultiSelect = False
 dlgOpen.InitialFileName = midirec
 If dlgOpen.Show = True Then
   buscafitxer = Nz(dlgOpen.SelectedItems(1), "")
 Else
  buscafitxer = ""
 End If
End Function

y en el código algo parecido a:
......
If Forms!FDatoshechos!Marco135 = 1 And Forms!FDatoshechos!Marco164 = 1 Then
mfitxer = buscafitxer("C:\ATESTADOS\COMPARECENCIAS")
If mfitxer = "" Then
   MsgBox ("No hay fichero seleccionado")
   Exit Sub
End If
appword.Application.selection.InsertFile FileName:=mfitxer, Range:="", ConfirmConversions:=False, Link:=False, Attachment:=False
.........

El código está expuesto a título de ejemplo y sin comprobar
Espero que ayude a resolver la duda.
Ya comentas.
Un saludo a todos
Arriba
Antonio Pedro Ver desplegable
Asiduo
Asiduo


Unido: 13/Diciembre/2005
Estado: Sin conexión
Puntos: 308
Enlace directo a este mensaje Enviado: 26/Julio/2019 a las 14:12
Hola prga y perdón por el retraso en contestar, me han servido mucho las soluciones facilitadas, he aplicado la primera solución ( la otra  las tendré en cuenta).Lo dicho muchísimas gracias y un saludo. Se puede cerrar el hilo
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable