Fórum Documento do Word #365855
05/11/2008
0
Espero que possam me ajudar...
Estou precisando completar um documento já existente via programação. Substituir algumas partes do texro e inserir algumas tabelas. Atravez de pesquisas no forum, encontrei alguns exemplos:
MSWord:= CreateOleObject(´Word.Basic´);
Com esta variante consigo inserir uma tabela, más não consigo sair de dentro da tabela criada para criar outra tabela e nem para continuar inseririndo texto (fora da tabela criada). Além disso, não consigo também subistituir texto: o comando ´MSWord.Content.Find.Execute(FindText := ´@002´, ReplaceWith := ´Belo Horizonte ´+FormatDateTime(´DD/MM/YYYY´, Date));´ sempre retorna um erro dizendo que o comando Content, ou Find, ou... ´not supported by automation object´.
Quanto uso a variante MSWord..CreatOleObjeto(´Word.Application´), consigo substituir texto más não consigo inserir tabelas. A mensagem de erro é a mesma descrita acima.
Quanto uso as duas variantes MSWord:= CreateOleObject(´Word.Basic´) e MSDOC:= CreateOleObject(´Word.Application´) consigo substituir texto e criar uma tabela, más a tabela é sempre criada no topo da página e não onde o cursor supostamente deveria estar e também aí após criar uma tabela não consigo sair de dentro dela para continuar processando o documento.
Preciso substituir texto em um arquivo do word já existente e inserir algumas tabelas de preço em locais pre-difinidos.
Se puderem me ajudar...
Desde já agradeço pela atenção de vocês.
Augusto Vieira
ajvieira@terra.com.br
Zangado
Curtir tópico
+ 0Posts
05/11/2008
Luiz Henrique
na ClubeDelphi100 tem um artigo sobre isto dai
Gostei + 0
05/11/2008
Zangado
Onde encontro a ClubeDelphi100 ???
Gostei + 0
05/11/2008
Zangado
Se for possível, vai me ajudar demais.
Mesmo que não seja possível, Obrigado pela atenção.
Augusto Vieira
ajvieira@terra.com.br
Gostei + 0
05/11/2008
Laclaudi
Para facilitar a sua vida, crie uma macro no word fazendo a operação que deseja fazer no seu documento e depois veja o codigo que ela gerou e tente reproduzir na aplicação
LinMove:= wdLine;
WordApplication1.Selection.MoveDown(LinMove, EmptyParam, EmptyParam);
Gostei + 0
05/11/2008
Zangado
Não compila com o comando wdLine. Incluí no uses a cláusula Word2000 más aí a mensagem de erro passa a ser ´Word2000.dcu not found´.
Obrigado pela atenção.
Gostei + 0
07/11/2008
Laclaudi
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)