Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Faccruz

Substituir no Word

Recommended Posts

Tenho esse código abaixo para alterar algumas chaves no Word. Mas tem certas chaves que ele não está alterando, já verifiquei o documento e está exatamente igual ao parametro a ser procurado. Algumas chaves repetem várias vezes.

 

Word2k := CriaObjeto('Word.Application');	Doc	:= Word2k.documents.Open(FileListBox1.FileName);	Word2k.Visible := True;	//Substitui caracteres no word  //----------------- DADOS EMPRESA -------------------	Doc.Content.Find.Execute(FindText := '<nomeempresa>', ReplaceWith   := DMDados.TCadEmpresaRAZAO_EMPRESA.AsString );	Doc.Content.Find.Execute(FindText := '<cpfempresa>', ReplaceWith	:= DMDados.TCadEmpresaCGC_EMPRESA.AsString );	Doc.Content.Find.Execute(FindText := '<rgempresa>', ReplaceWith	 := DMDados.TCadEmpresaINSCR_EMPRESA.AsString );	Doc.Content.Find.Execute(FindText := '<endempresa>', ReplaceWith	:= DMDados.TCadEmpresaEND_EMPRESA.AsString );	Doc.Content.Find.Execute(FindText := '<bairroempresa>', ReplaceWith := DMDados.TCadEmpresaBAIR_EMPRESA.AsString );	DMDados.TCadCidade.Locate('Cod_Cid', DMDados.TCadEmpresaCID_EMPRESA.AsString, []);	Doc.Content.Find.Execute(FindText := '<cidempresa>', ReplaceWith := DMDados.TCadCidadeDescr_cid.AsString );	Doc.Content.Find.Execute(FindText := '<ufempresa>', ReplaceWith := DMDados.TCadCidadeEst_cid.AsString );  //----------------- FIM DADOS EMPRESA ----------------  //----------------- DADOS CLIENTE --------------------	Doc.Content.Find.Execute(FindText := '<nomecli>', ReplaceWith   := DMDados.TCadCliComercioNome_Cli.AsString );	Doc.Content.Find.Execute(FindText := '<endcli>', ReplaceWith	:= DMDados.TCadCliComercioEnd_Cli.AsString );	Doc.Content.Find.Execute(FindText := '<bairrocli>', ReplaceWith := DMDados.TCadCliComercioBair_Cli.AsString );	//ver se é fisica ou juridica	case DMDados.TCadCliComercioTipo_Cli.AsString[1] of	  'J' : begin			  Doc.Content.Find.Execute(FindText := '<cnpjcli>', ReplaceWith := DMDados.TCadCliComercioCGC_Cli.AsString );			  Doc.Content.Find.Execute(FindText := '<iecli>', ReplaceWith   := DMDados.TCadCliComercioInscr_Cli.AsString );			end;	  'F' : begin			  Doc.Content.Find.Execute(FindText := '<cnpjcli>', ReplaceWith := DMDados.TCadCliComercioCPF_Cli.AsString );			  Doc.Content.Find.Execute(FindText := '<iecli>', ReplaceWith   := DMDados.TCadCliComercioRg_Cli.AsString );			end;	end;	DMDados.TCadCidade.Locate('Cod_Cid', DMDados.TCadCliComercioCid_Cli.AsString, []);	Doc.Content.Find.Execute(FindText := '<cidcli>', ReplaceWith := DMDados.TCadCidadeDescr_cid.AsString );	Doc.Content.Find.Execute(FindText := '<ufcli>', ReplaceWith  := DMDados.TCadCidadeEst_cid.AsString );  //---------------- FIM DADOS CLIENTE ---------------  //--------------- DADOS CONTRATO -------------------	Doc.Content.Find.Execute(FindText := '<dtcontrato>', ReplaceWith	 := DateToStr(JvDtEdtInicio.Date) );	Doc.Content.Find.Execute(FindText := '<dtfimcontrato>', ReplaceWith  := DateToStr(JvDtEdtFim.Date) ); //somar 1 ano	Doc.Content.Find.Execute(FindText := '<valor>', ReplaceWith  := JvCalcEdtMensal.Text ); //Valor mensal	Doc.Content.Find.Execute(FindText := '<valorcha>', ReplaceWith  := JvCalcEdtVisita.Text ); //Valor adicional	Doc.Content.Find.Execute(FindText := '<diafecha>', ReplaceWith  := '04' ); //dia do fechamento	Doc.Content.Find.Execute(FindText := '<diafechaextenso>', ReplaceWith  := 'quatro' );	DecodeDate(Now, Ano, Mes, Dia);	Doc.Content.Find.Execute(FindText := '<dia>', ReplaceWith  := IntToStr(Dia) );	Doc.Content.Find.Execute(FindText := '<mes>', ReplaceWith  := MesExtenso(Mes) );	Doc.Content.Find.Execute(FindText := '<ano>', ReplaceWith  := IntToStr(Ano) );	//Mostra Documento   // Word2k.Visible := True;

Delphi 7 com Word 2003

Compartilhar este post


Link para o post
Compartilhar em outros sites
Eu fui nesse site, mas apenas mostra como manipular o arquivo, o que eu queria, acho que não me expressei bem, é alterar em um arquivo já pronto no Word através de chaves, até aí tudo certo, mas tem algumas chaves não no inicio, no fim que não estão sendo altaradas, o que poderia ser?Existem chaves que se repetem. Pensei em algo como verificar se é final de arquivo, ou se ainda existem parametros a serem substituidos

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.