Passar parâmetros para Word a partir do Delphi - Dica

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (4)  (0)

Veja nesta dica como passar valores para parâmetros direto em um documento do Word em Delphi.

Olá galera, nesta dica irei mostrar como passar valores para um documento do Word. Desenvolvi um Doc padrão com o nome de Modelo.DOC, veja sua estrutura.

Certificado

Certifico o aluno @aluno, participante do treinamento @treinamento, com carga horária de @horario hrs.

Equipe Devmedia.

www.devmedia.com.br.

Agora podemos alterar os dados que estão como parâmetros, na verdade, este @aluno, @treinamento e @horario são valores que eu criei, não é regra.

Vamos desenvolver uma tela para passagem de parâmetros.

E no click do botão iremos passar os paraemtros . mas antes disto precisamos declarar no USES a unit "ComObj", para que o exemplo funcione corretamente.

procedure TFrmPrincipal.BtnGerarClick(Sender: TObject);

var

  WinWord, Docs, Doc: Variant;

begin

WinWord := CreateOleObject('Word.Application');

// Tornar o word visivel

WinWord.Visible := True;

// Abrir arquivo para edição

Doc:= WinWord.Documents.Open(ExtractFilePath(Application.ExeName)+'Modelo.doc'

// Substituir itens do arquivo por texto escolhido

Doc.Content.Find.Execute(FindText := '@aluno' , ReplaceWith := EdtNome

Doc.Content.Find.Execute(FindText := '@treinamento', ReplaceWith := EdtTreinamento

Doc.Content.Find.Execute(FindText := '@horario' , ReplaceWith := EdtHorario

// Salvar Documento

Doc.SaveAs(ExtractFilePath(Application.ExeName) + EdtNome.Text + '.doc');

if Application.MessageBox('Deseja Fechar o Documento?','Confirmação',MB_ICONQUESTION

  WinWord.Quit;

// Fechar

end;

Observe que será criado um arquivo .doc, na pasta do executável com o nome do aluno, mantendo assim sempre o documento padrão.

Fico por aqui ate à próxima Quick Tips.

Um abraço

Wesley Y

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?