cococo84
Messages postés72Date d'inscriptionmercredi 21 septembre 2005StatutMembreDernière intervention13 janvier 2006
-
13 janv. 2006 à 11:49
sebmafate
Messages postés4936Date d'inscriptionlundi 17 février 2003StatutMembreDernière intervention14 février 2014
-
13 janv. 2006 à 16:29
bonjour,
je cherche à automatiser une page word à partir de mon application winform.
Mon code ci-dessous marche bien mais le temps d'execution est bcp trop long.
Cmt puis-je optimiser ce code pour accroître la vitesse d'execution?
merci d'avance.
// Connexion à Word
Word.Application msWord = new Word.Application();
msWord.Visible true; object missing System.Reflection.Missing.Value;
// Attribuer le nom
object fileName = "C:\\Test\\calculgéo.doc";
Word.Document nvDoc;
// Copie Le texte que je transfère dans le clipboard
string monContenu = vaf.P.Value.ToString("0.000");
DataObject clipData1 = new DataObject(DataFormats.Rtf, monContenu);
Clipboard.SetDataObject(clipData1, false) ;
// Transfert le clipboard dans_u87 ?ord
// On identifie l'emplacement
object field = "cell1";
object fieldEnd = "c1";
object posStart = nvDoc.Bookmarks.get_Item(ref field).Start;
object posEnd = nvDoc.Bookmarks.get_Item(ref fieldEnd).End;
nvDoc.Range( ref posStart, ref posEnd).Select();
// On transfert le texte
msWord.Selection.Paste();
// On déplace le bookmark de fin
nvDoc.Bookmarks.Add((string)fieldEnd, ref missing);
sebmafate
Messages postés4936Date d'inscriptionlundi 17 février 2003StatutMembreDernière intervention14 février 201437 13 janv. 2006 à 16:29
je sais pas ce que fait exactement ton code... mais le pilotage de Word est très lent... à une époque je mettait 5min pour un doc word et 10s pour le mm en HTML.