Word...

Hola... Te paso un trozo de programa que lo hice hace años y que utilizo para abrir un .XLS y pasar datos de las DBF's este ..., y mucho más... Quiero hacer lo mismo con el WORD... Y estoy trabado... ¿me tirarías un F1? Mil gracias...
Programa
========
Wait window nowait "Exportando a Excel...Espere por Favor."
depo="Pedido de Mercadería - " + w_depo + " - Fecha: " + dtoc(date())
xpl2=CreateObject("Excel.Application")
libros = xpl2.workbooks
libros.open("c:\archivo.xls")
libro = libros.item(1)
xplani = libro.worksheets.item(1)
*'-------------------------------------------------------------------------------
*' Proteje y desproteje hoja
*' ======= = ========== ====
*'
*' ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
*' ActiveSheet.Unprotect
*'-------------------------------------------------------------------------------
with xplani
.Unprotect("posnet")
.range("b1").value = m.depo
.range("b3").value = "Desde:"
.range("b4").value = "Hasta:"
.range("c3").value = "'" + dtoc(date()-7)
.range("c4").value = "'" + dtoc(date()-1)
endwith
etc.. Etc... Etc...
Libro. Sabe
Libros.close

1 respuesta

Respuesta
1
Espero te sirva el siguiente fragmento:
Programa
========
WAIT "Exportando a Word...Espere por Favor."
depo="Pedido de Mercadería - " + w_depo + " - Fecha: " + DTOC( DATE() )
m.oWord = CREATEOBJECT( "word.application" )
WITH m.oWord.APPLICATION
.Documents.OPEN( "C:\Archivo.doc" )
WITH .SELECTION
.FONT.bold = .T.
.ParagraphFormat.ALIGNMENT = 1
.TypeText( depo )
.FONT.bold = .F.
.TypeParagraph
.ParagraphFormat.ALIGNMENT = wdAlignParagraphLeft
ENDWITH
.SELECTION.MoveDown( 5, 1 )
.SELECTION.TypeText( "Desde:" + CHR(9) + "Hasta:" )
.SELECTION.TypeParagraph
.SELECTION.TypeText( DTOC( DATE() - 7 ) + CHR(9) + DTOC( DATE() ) )
.SELECTION.TypeParagraph
** Resto de los datos...
. ActiveDocument.SAVE( m.cArchivo )
. ActiveDocument. CLOSE
Endwith
... bueno, eso digo yo.
Víctor.
Mira.. funciona OK.. quedó así...
WAIT "Exportando a Word...Espere por Favor." window nowait
depo="Pedido de Mercadería - Depo 1 - Fecha: " + DTOC( DATE() )
m.oWord = CREATEOBJECT( "word.application" )
WITH m.oWord.APPLICATION
.Documents.OPEN( "C:\Archivo.doc" )
WITH .SELECTION
.FONT.bold = .T.
.ParagraphFormat.ALIGNMENT = 1
.TypeText( depo )
.FONT.bold = .F.
.TypeParagraph
* .ParagraphFormat.ALIGNMENT = wdAlignParagraphLeft
ENDWITH
.SELECTION.MoveDown( 5, 1 )
.SELECTION.TypeText( "Desde:" + CHR(9) + "Hasta:" )
.SELECTION.TypeParagraph
.SELECTION. TypeText( DTOC( DATE() - 7 ) + CHR(9) + DTOC( DATE() ) )
.SELECTION.TypeParagraph
** Resto de los datos...
.ActiveDocument. SABE
.ActiveDocument.CLOSE
ENDWITH
Solo un problemita... me deja la aplicación winword.exe abierta... la misma no se cierra al final del fragmento del código...
Mil Gracias...
Agrega la línea:
m.oWord.QUIT
Al final del código (después de la clausula "ENDWITH")

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas