Jump to content
lphant

Abrir/actualizar/imprimir documento de correspondencia word

Recommended Posts

Muy buenas a tod@s;

 

Esto de no tener ahora ordenador en casa es una faena, no me puede meter todo lo que quisiera ;)

 

A ver quién me puede ayudar en la nueva macro en la que estoy liado J

 

Os hago un pequeño resumen.

 

Tengo una macro en excel a la que añadiendo diferente información de diferentes tablas me genera unos datos en un hoja Excel.

Esa hoja Excel con los datos generados los tengo vinculados a un Word por correspondencia.

Ahora mi problema es:

La parte de abrir el Word y cerrarlo sin que se vea ok.

Pero la parte de que se actualice la hoja de Word ( cuando se abre la hoja sin la macro aparece una pantalla en la que dice que se está ejecutando el comando SQL que si deseas continuar ) dando a que sí y que se impriman todos los documentos de correspondencia ( en Word para imprimir esos documentos se da a “finalizar y combinar”, “imprimir documentos” ) no lo consigo.

 

Os añado el Excel con la parte del Word que funciona.

 

Private Sub Abre_word_imprime_cierra()
With CreateObject("word.application")
.Visible = False
With .Documents.Open("C:\Users\Varios\Platillas & Carteles\Tarjetas.doc", , , , "casa")
.PrintOut       ' solo imprime la primera hoja
.Close False
End With
.Quit
End With
End Sub 

 

Gracias de antemano.

macro word.xls

Share this post


Link to post
Share on other sites

Buenos dias Chic@s;

Perdonar que vuelva a molestar pero todavía no he dado con ello.

He investigado por internet y lo que he encontrado no hacia lo que necesito.

Resumen de los 2 puntos que no consigo hacer funcionar:

Cuando se habrá el Word desde la macro Excel actualice los datos de correspondencia ( al abrir el Word sale un mensaje para continuar dando a sí o no, hay que dar a sí ).

 Una vez abierto imprimir todas las hojas de correspondencia.

Se puede hacer??, si no se pudiera que me aconsejáis??, desde la grabadora de Word tengo las líneas pero no quería tener una macro en Word.

Muchísimas gracias de antemano.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable: Sergio Andrés Celemín

Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.

Legitimación: Consentimiento del interesado.

Destinatarios: Hetzner Online GmbH.

Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso,
rectificación, supresión, oposición y demás derechos legalmente establecidos a
través del email sergio@ayudaexcel.com.

Información adicional: Encontrarás más información en la política de privacidad.




  • Posts

    • Buenos días!   Amigos del foro quisiera solicitarles el apoyo para resolver el siguiente problema, necesito una macro que me permita copiar de una hoja a otra si se cumplen los siguientes criterios: Si el valor en la columna G de la hoja Diario es mayor que cero, se copien los datos de Diario(hasta la ultima celda con datos) a la hoja BD pegando los datos en la ultima celda vacía de BD. Al copiar aquellos valores mayores a cero en la hoja BD quitarlos de la hoja Diario, solamente dejando los datos que contengan cero o se encuentren vacios en la columna G de la hoja Diario. Lo estuve intentando de la siguiente manera: Sub copiar2() Set J1 = Sheets("Diario") Set J2 = Sheets("BD") j = J2.Range("A" & Rows.Count).End(xlUp).Row + 1 For i = 3 To 79 If J1.Cells(i, "G") > 0 Then J2.Cells(i, "A") = J1.Cells(i, "A") J2.Cells(i, "B") = J1.Cells(i, "B") J2.Cells(i, "C") = J1.Cells(i, "C") J2.Cells(i, "D") = J1.Cells(i, "D") J2.Cells(i, "E") = J1.Cells(i, "E") J2.Cells(i, "F") = J1.Cells(i, "F") J2.Cells(i, "G") = J1.Cells(i, "G") J2.Cells(i, "H") = J1.Cells(i, "H") J2.Cells(i, "I") = J1.Cells(i, "I") J2.Cells(i, "J") = J1.Cells(i, "J") J2.Cells(i, "K") = J1.Cells(i, "K") J2.Cells(i, "L") = J1.Cells(i, "L") J2.Cells(i, "M") = J1.Cells(i, "M") J2.Cells(i, "N") = J1.Cells(i, "N") End If Next MsgBox "Valores copiados" End Sub Saludos JB Consulta copiado.xlsm
    • Hola! También puedes poner =Valor(A2), luego copiar y pegar valores
    • Cielos no se que decir, siempre me sorprenden; ambos casos son buenos. Aun no termino de analizar el código bien, pero en cuanto termine les haré saber de antemano muchas gracias.
    • Si te vas al explorador del proyecto VBA, en el árbol de módulos, puedes ver la hoja "aux"  Te adjunto otro método, trabajando con una matriz y como te lo comenté al inicio, trasladando los registros visibles   Saludos! Importar datos de otro libro.zip
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy