Enviar cadastro para word

04/01/2006

Amigos, fiz um programa de cadastros de pessoas, com código, etc...
Gostaria que, ao salvar o cadastro, fosse salvo também um arquivo em word, cujo nome do arquivo seria o código da pessoa.

Este documento, tem que estar formatado, como se fosse um fórmulário de inscrição...

Bem...

Desde já, agradeço!


Franthesco

Respostas

05/01/2006

Martins

vc pode alimentar uma tabela com os dados q deseja, formatar um documento no Word colocando um identificador para os campos e esses serão substituídos pelos valores da tabela, acredito q vc possa fazer isso usando OLE.

Fiz algo assim certa vez, mas foi bem básico, somente para preencher alguns dados de um documento.

Boa sorte


Responder Citar

05/01/2006

Franthesco

Caro amigo Martins, obrigado por sua resposta.

Você saberia onde posso encontrar um material sobre isto, pois sou iniciante em delphi.... Não entendo quase nada.....

Estou procurando algumas coisas, mais o que acho, quase nunca funciona...

Dede já, agradeço,


Responder Citar

05/01/2006

Franthesco

Amigos, consegui enviar para o word os dados... Utilizei o código abaixo...

Meu problema agora está em fazer a formatação, como em um formulário.... Com os dados dentro de tabelas, um formulário, que ao invés de preenchido a mão, foi preenchido no computador...

Bem, este é o código:

procedure TForm1.Button1Click(Sender: TObject);
var
Word : Variant;
begin
Word := CreateOleObject(´Word.Application´);
Word.Visible := True;
Word.Documents.Add;
Word.Selection.InsertAfter(Edit1.Text);
Word.Selection.InsertAfter(Edit2.Text);
Word.Selection.InsertAfter(Edit3.Text);
Word.Selection.InsertAfter(Edit4.Text);
.
.
.
Word.ActiveDocument.SaveAs(edit1.text+´.doc´,0);
Word.Quit;
end;



Bem, quem puder me ajudar na questão da formatação... Agradeço!
Abraços...


Responder Citar

05/01/2006

Franthesco

Caros amigos, consegui resolver com o código abaixo! Obrigado pela ajuda!


//DECLARA NA USES
ComObj


//DECLARA VARIAVEL
var
MSWord: Variant;


//CRIA UMA APLICAÇÃO WORD
MSWord := CreateOleObject(´Word.Application´);


//DEIXA A APLICAÇÃO INVISIVEL ATÉ A TRANSFERENCIA DE DADOS
MSWord.Visible:=false;


//ABRE O DOCUMENTO FONTE (ESTE FONTE TEM O FORMATO DO SEU FORMULÁRIO...)
MSWord.Documents.Open(´C:\Documents and Settings\CASA\Desktop\Teste.doc´);


//COMANDO PARA PULAR DE CÉLULA
MSWord.Selection.MoveRight(12);


//COMANDO PARA ESCREVER O TEXTO
MSWord.Selection.TypeText(Text :=trim(Edit.Text));


//TORNA O WORD VISIVEL
MSWord.Visible:=true;


//SALVA O DOCUMENTO
MSWord.ActiveDocument.SaveAs(´C:\Documents and Settings\CASA\Desktop\´ + EDIT1.TEXT+´.doc´,0);


Abraços...


Responder Citar