Cómo hacer un "paste" en Word desde VFP

09/07/2003 - 12:08 por Enrique Carmona | Informe spam
Hola grupo:

Necesito pegar un determinado texto en un objeto word. Yo hago:


lclineas= "12212343rlwf off goewoi34235"

oWord=CREATEOBJECT("Word.Application")
docu = "c:\pruebas_varias\otro.doc"
oWord.Application.Documents.Open(docu)
_CLIPTEXT = lclineas
oWord.Application.Documents.PasteAndFormat (lclineas) &&&&&(1)
oWord.Application.Documents.Add.Content.Paste &&&&&(2)
oWord.Application.Visible = .T.

En la línea que pone (1) da error y en la (2) lo que hace es crear otro
documento pegando el contenido de "_CLIPTEXT ". Pero yo quiero pegarlo en el
documento "otro.doc" que lo tengo abierto.

Es un poco lioso pero creo que lo entienden.

Saludos cordiales.

Enrique Carmona.
Sevilla - España

Preguntas similare

Leer las respuestas

#1 José Luis.
09/07/2003 - 13:05 | Informe spam
El método/Propiedad "PasteAndFormat" no lo he encontrado
(empleo la versión 2000) pero algo parecido a lo que
quieres lo he conseguido así, supongo que te faltará
posicionarte en la línea que deseas.

oTuDocumento = oWord.Application.Documents.Open(docu)
oTuDocumento.Content.Paste

Saludos.
José Luis.


Hola grupo:

Necesito pegar un determinado texto en un objeto word. Yo


hago:


lclineas= "12212343rlwf off goewoi34235"

oWord=CREATEOBJECT("Word.Application")
docu = "c:\pruebas_varias\otro.doc"
oWord.Application.Documents.Open(docu)
_CLIPTEXT = lclineas
oWord.Application.Documents.PasteAndFormat (lclineas)


&&&&&(1)
oWord.Application.Documents.Add.Content.Paste


&&&&&(2)
oWord.Application.Visible = .T.

En la línea que pone (1) da error y en la (2) lo que hace


es crear otro
documento pegando el contenido de "_CLIPTEXT ". Pero yo


quiero pegarlo en el
documento "otro.doc" que lo tengo abierto.

Es un poco lioso pero creo que lo entienden.

Saludos cordiales.

Enrique Carmona.
Sevilla - España


.

Respuesta Responder a este mensaje
#2 José Luis S. Blasco
09/07/2003 - 16:29 | Informe spam
He contestado esto hace unas horas, pero no sé lo que pasa con la repuesta
que no lo veo en las news, y si otros enviados después.

Te repito la respuesta que te daba, que si bien no es completa igual te
puede ayudar.

Este código a mi me funciona.

oWord=CREATEOBJECT("Word.Application")
docu = "c:\pruebas_varias\otro.doc"
oMiDocumento = oWord.Application.Documents.Open(docu)
_CLIPTEXT = lclineas
&& oWord.Application.Documents.PasteAndFormat (lclineas) &&&&&(1)
oMiDocumento.Content.Paste &&&&&(2)
oWord.Application.Visible = .T.

No he podido probar con el método "PasteAndFormat" pues este es nuevo de
la versión 2002, y yo empleo la 2000, pero el problema estaba en la
referencia al documento no tanto al uso del "PasteAndFormat"

Un saludo.
José Luis.







PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#3 Enrique Carmona
10/07/2003 - 08:27 | Informe spam
Hola José Luis:
He probado tus líneas pero no funciona porque el fichero que abro,
"c:\pruebas_varias\otro.doc", tiene datos y lo que hace es machacarlos y
pone el "paste", no respeta lo que había.

Saludos cordiales

Enrique Carmona
Sevilla - España


"José Luis S. Blasco" escribió en el mensaje
news:
He contestado esto hace unas horas, pero no sé lo que pasa con la repuesta
que no lo veo en las news, y si otros enviados después.

Te repito la respuesta que te daba, que si bien no es completa igual te
puede ayudar.

Este código a mi me funciona.

oWord=CREATEOBJECT("Word.Application")
docu = "c:\pruebas_varias\otro.doc"
oMiDocumento = oWord.Application.Documents.Open(docu)
_CLIPTEXT = lclineas
&& oWord.Application.Documents.PasteAndFormat (lclineas) &&&&&(1)
oMiDocumento.Content.Paste &&&&&(2)
oWord.Application.Visible = .T.

No he podido probar con el método "PasteAndFormat" pues este es nuevo de
la versión 2002, y yo empleo la 2000, pero el problema estaba en la
referencia al documento no tanto al uso del "PasteAndFormat"

Un saludo.
José Luis.







PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#4 José Luis S. Blasco
10/07/2003 - 09:05 | Informe spam
Si, es cierto, lo había probado con un documento vacio y no me percaté de
este "pequeño" detalle, "supongo que tu cliente no querra esto" ;-D

Bien, una alternativa entonces es el siguiente código:

oWord=CREATEOBJECT("Word.Application")
oWord.Application.Documents.Open("C:\OTRO.DOC")
_CLIPTEXT = "segundaprueba"
oword.Selection.Paste
oword.Visible = .t.

La colocación en el lugar adecuando lo puedes hacer por ejemplo con

oword.Selection.MoveDown
oword.Selection.MoveLeft

etc.

No sé si es la opción más optima, he programado extensamente Excel con VBA
pero nunca Word.

Para este tipo de automatizaciones de office, siempre me a ayudado mucho
ver como lo hace el propio Office. Para ello grabo una macro con lo que
quiero hacer, y posteriormente miro el código de la macro para ver los
objetos, métodos y propiedades que el ha empleado.

Saludos.
José Luis.




PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#5 Enrique Carmona
10/07/2003 - 16:51 | Informe spam
Estimado José Luis:

Hace lo mismo que antes machaca lo que había.

Muchas gracias.

Enrique Carmona
Sevilla - España

"José Luis S. Blasco" escribió en el mensaje
news:#
Si, es cierto, lo había probado con un documento vacio y no me percaté de
este "pequeño" detalle, "supongo que tu cliente no querra esto" ;-D

Bien, una alternativa entonces es el siguiente código:

oWord=CREATEOBJECT("Word.Application")
oWord.Application.Documents.Open("C:\OTRO.DOC")
_CLIPTEXT = "segundaprueba"
oword.Selection.Paste
oword.Visible = .t.

La colocación en el lugar adecuando lo puedes hacer por ejemplo con

oword.Selection.MoveDown
oword.Selection.MoveLeft

etc.

No sé si es la opción más optima, he programado extensamente Excel con VBA
pero nunca Word.

Para este tipo de automatizaciones de office, siempre me a ayudado mucho
ver como lo hace el propio Office. Para ello grabo una macro con lo que
quiero hacer, y posteriormente miro el código de la macro para ver los
objetos, métodos y propiedades que el ha empleado.

Saludos.
José Luis.




PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida