dederfred
Messages postés19Date d'inscriptionsamedi 4 novembre 2000StatutMembreDernière intervention23 novembre 2006
-
23 nov. 2006 à 07:51
cs_pers
Messages postés38Date d'inscriptionvendredi 2 mai 2003StatutMembreDernière intervention 9 décembre 2009
-
23 nov. 2006 à 14:21
Est-il possible de lancer une commande visualBasic dynamique pour Word dans Delphi. (Avec des argument venant de delphi.
Je dois lancer cela :
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= wdPrintDocumentContent, Copies:=1, Pages:="", PageType:=wdPrintAllPages, ManualDuplexPrint:=False, Collate:=True, Background:=True, PrintToFile:= False, PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, PrintZoomPaperHeight:=0
J’ai essayer de passer par la commande sous Delphi monfichierword.printOut();
Mais j'ai une erreur me disant :
Ma ligne est celle la :
monFichier.PrintOut(Background,EmptyParam,range,EmptyParam,EmptyParam,EmptyParam,EmptyParam,copie,EmptyParam,PageType,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam
J’avoues que je ne vois pas pourquoi cela ne fonctionne pas .
ma variable copie provient d'une autre form et quand je fais un showmessage(copie); avant le printout il m'affiche bien 1 .
Je ne comprends pas.
Merci d’avance.
(j'ai posté sur un autre forum aussi mais personne à de reponse )
cs_pers
Messages postés38Date d'inscriptionvendredi 2 mai 2003StatutMembreDernière intervention 9 décembre 2009 23 nov. 2006 à 14:21
salut
Moi personnellement je préfere ainsi car je dois pas me farcir les "emptyparam" et pas respecter un certain ordre
(enfin pas encore rencontrer des pb à ce niveau)
ce serait sans aucun doute plus facile de voir un peu plus de ton code...
Range n'est pas l'imprimante mais le type de sélection à imprimer ici = valeur numérique
Pour l'ensemble des param's tu poses la question en VBA - l'aide n'est pas trop ma faite
dederfred
Messages postés19Date d'inscriptionsamedi 4 novembre 2000StatutMembreDernière intervention23 novembre 2006 23 nov. 2006 à 10:29
Au debut je croyais comme toi mais quand je rentre seulemeent 14 argument il me met :
[Error] Interface_Termite.pas(1205): Not enough actual parameters
et quand je rentre cela
monFichier. et que je rentre le mot PrintOut j'ai une sorte d'info bule qui me met tous ses arguments .
cs_pers
Messages postés38Date d'inscriptionvendredi 2 mai 2003StatutMembreDernière intervention 9 décembre 2009 23 nov. 2006 à 12:38
Salut
Je te propose ceci. Ca fonctionne chez moi mais c'est largement perfectible
procedure TForm1.Button1Click(Sender: TObject);
Var MsWord : Variant ;
begin
// comobj,wordxp,OleServer dans les uses
try
MsWord := CreateOleObject ('Word.Application');
except
on E: EOleSysError do MsWord := GetActiveOleObject('Word.Application');
end;
dederfred
Messages postés19Date d'inscriptionsamedi 4 novembre 2000StatutMembreDernière intervention23 novembre 2006 23 nov. 2006 à 12:48
Merci beaucoup de ta solution je vais l'essayer mais si une solution autre existe je suis preneur car mon application est basé a l'origine sur le composant TWordApplication se serait embetant de devoir refaire le travaille d'une semaine.
dederfred
Messages postés19Date d'inscriptionsamedi 4 novembre 2000StatutMembreDernière intervention23 novembre 2006 23 nov. 2006 à 13:02
Petite question range est bien le nom de l'imprimante choisie ??
Si possible pouvez vous me donner la signification de chaque argument de la commande printout ?
merci beaucoup ou si vous trouvez un lien le fesant car je n'en trouve pas et j'ai peu etre fait une erreure .
Pour information , j'ai tester ce qui ma était donner au dessu s et j'ai la meme erreure ...