hola de nuevo... bueno, me he tirado un rato haciendo bugs y leyendo documentanción, uffff, pero creo que más o menos ya he sacado algo que se parece un poco a lo que yo quería.... al final la línea esa se ha quedado así...
Cita: datos_correctos = MsgBox("¿Son los datos correctos?" & (Chr(13)) & nombre & (Chr(13)) & apellidos, vbInformation + vbOKCancel, "Pulse Aceptar para imprimir, Cancelar para corregir los datos")
Quiero aprovechar para agradecer la ayuda prestada y orientación hacia donde encaminar los pasos, muchas gracias...
aprovecho y pongo las lineas de código por si alguien le puede llegar a ser útil, la idea era que al abrir un doc. de word te pregunte datos y luego una vez introducido los datos imprima y cierre el doc.
Si veis que hay algo que se pueda mejorar (que seguro que si, decirlo por favor). gracias
Cita: Private Sub Document_Open()
Dim nombre As String
Dim apellidos As String
nombre = InputBox("¿Como te llamas?", "Introduzca el nombre")
FormFields("nombre").Result = nombre
apellidos = InputBox("¿me dices tus apellidos?", "Introduzca los apellidos")
FormFields("apellidos").Result = apellidos
Rem comprobamos los datos introducidos
datos_correctos = MsgBox("¿Son los datos correctos?" & (Chr(13)) & nombre & (Chr(13)) & apellidos, vbInformation + vbOKCancel, "Pulse Aceptar para imprimir, Cancelar para corregir los datos")
Rem Si los datos NO SON correctos volvemos al principio
If datos_correctos = vbCancel Then
ActiveDocument.FormFields("nombre").Result = ""
ActiveDocument.FormFields("apellidos").Result = ""
Call Document_Open
Rem si los datos son correctos imprimimos dos copias y preguntamos si cerramos
Else
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentContent, Copies:=2, Pages:="", PageType:=wdPrintAllPages, _
ManualDuplexPrint:=False, Collate:=True, Background:=True, PrintToFile:= _
False, PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
PrintZoomPaperHeight:=0
Rem preguntamos si desea seguir trabajando con el mismo documento
cerrar = MsgBox("¿DESEA SALIR DEL DOCUMENTO?", vbInformation + vbOKCancel, "Pulse Aceptar para salir o Cancelar para introducir otro dato")
Rem Si pulsamos aceotar cerramos guardando los cambios.
If cerrar = vbOK Then
Application.Documents("NewDocument.doc").Close (Word.WdSaveOptions.wdSaveChanges)
Rem si quisieramos cerrar sin guardar los cambios habría que poner
' Me.Close (Word.WdSaveOptions.wdDoNotSaveChanges)
' o si queremos que nos pregunte al salir poner
'ActiveWindow.Close
Rem si no quiere cerrar el documento pues volvemos al inicio
Else
Call Document_Open
End If
End If
End Sub