Ir para conteúdo

POWERED BY:

Arquivado

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

GISAMS

Imprimir intervalos de páginas de um arquivo word no delphi

Recommended Posts

Olá, bom dia!

 

Estou fazendo um sisteminha em delphi e agora vi a necessidade de interagir juntamente com o word. Já pesquisei várias coisas sobre isso e consegui imprimir documentos word no delphi.

Mas agora surgiu uma nova situação, preciso deixar de uma forma que o usuário escolha os intervalos de folhas que deseja imrpimir. Já coloquei o printdialog e configurei todas as propriedades, mas ele não atende as configurações colocadas e acaba imprimindo todo o arquivo.

 

Por favor, se alguém souber de alguma outra forma eu ficarei mt grata.

 

Abraços!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, bom dia!

 

Estou fazendo um sisteminha em delphi e agora vi a necessidade de interagir juntamente com o word. Já pesquisei várias coisas sobre isso e consegui imprimir documentos word no delphi.

Mas agora surgiu uma nova situação, preciso deixar de uma forma que o usuário escolha os intervalos de folhas que deseja imrpimir. Já coloquei o printdialog e configurei todas as propriedades, mas ele não atende as configurações colocadas e acaba imprimindo todo o arquivo.

 

Por favor, se alguém souber de alguma outra forma eu ficarei mt grata.

 

Abraços!!!

 

Bom diaaa!!!

 

Vim pedir novamente a ajuda de vcs, ainda não consegui resolver esse probleminha.. =/

Já pesquisei várias coisas na net, fiz do mesmo jeito e não funciona...

Por favor, alguém poderia me dizer o que está faltando configurar??

 

No printdialog eu configurei as seguintes propriedades:

 

frompage= 1

maxpage = 6

minipage= 1

topage = 6

 

em options configurei a propriedade popagenums para true

em printrange está configurado como prallpages (se eu configurar como prpagenums a caixa de diálogo não aparece).

 

no botão para imprimir o documento eu coloquei todos os caracteres para alteração dos dados no word:

 

Screen.Cursor:=crHourGlass;
WinWord := CreateOleObject('Word.Application');
WinWord.Visible :=false;
Docs := WinWord.Documents; 
if fileExists('D:\contrato.doc') = true then
deletefile('D:\contrato.doc');
CopyFile('D:\contrato.doc','D:\contrato.doc',True);
Doc.Content.Find.Execute(FindText:='@contratante1',ReplaceWith:= trim(f_dados.q_alunonome_resp.Value));
Doc.Content.Find.Execute(FindText:='@rg1',ReplaceWith:= trim(f_dados.q_alunorg_resp.Value));
...

Doc.SaveAs('D:\contrato.doc'); 
if printdialog1.Execute then
begin
 doc.printout(false);
end;
WinWord.Quit;

 

As alterações funcionam perfeitamente e a impressão também, a única coisa que não está dando certo é o usuário escolher os intervalos de páginas tipo 1 de 1. Mesmo escolhendo ainda continua saindo todas as folhas... o que há de errado??? Por favor me ajudem!!!

 

Desde já agradeço.

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.