Home > C#

Créer un document Microsoft Word avec C #

30. September 2010 by Steevy.Algou

Créer un document Microsoft Word avec C #.

C # est un langage idéal pour l'automatisation des processus. Une raison à cela est la facilité avec laquelle les programmeurs peuvent contrôler le fonctionnement des autres applications telles que Microsoft Word. Avec juste quelques lignes de code le programmeur est capable de:

  • Exécuter Microsoft Word
  • Créer un nouveau document Microsoft Word
  • Ecrire dans le nouveau document
  • Enregistrer le document sur l'ordinateur de l'utilisateur
  • Fermer Word Microsoft

Et tout cela peut se faire soit à la vue de l’utilisateur (de sorte qu'il puisse voir ce qui se passe) ou il peut être fait sans qu’il ne le remarque.

Ajout de Microsoft Word  en tant que  référence C#

Il y a, bien sûr, une hypothèse de base que Microsoft Word soit réellement installée sur l'ordinateur du programmeur. Si il l’est alors il doit   l'ajouter comme une référence.

Une fois que cela à été fait, alors le programmeur peut commencer à écrire le code qui contrôle Microsoft Word.

Exécuter  Microsoft Word avec C #

Le développeur C # commence  en créant une nouvelle application Word :

 

Word.Application oWord = new Word.Application();

 

 

 

Par défaut Microsoft Word sera exécuté invisiblement dans le fond. Cependant, il peut être utile pour voir le document au cours de la phase de développement du projet :

 

oWord.Visible = true;

 

Ce code rendra le document Word  visible. C'est alors, seulement , une question de supprimer .

Création d'un Nouveau Document Microsoft Word

Une fois que Microsoft Word à été ouvert,  un nouveau document peut être ajouté. Cependant, cette méthode nécessite un certain nombre de valeurs, dont beaucoup sont connues ou requis par le programmeur. Toutefois, le programmeur a juste besoin de créer un objet qui va gérer ces valeurs manquantes :

 

 

object oMissing = System.Reflection.Missing.Value

 

Et puis, cet objet peut être utilisé lorsque le nouveau document est créé :

 

Word.Document oDoc = oWord.Documents.Add (ref oMissing, ref oMissing,
ref oMissing, ref oMissing);

Si l'application est exécutée à ce stade, un nouveau document vide sera créé. L'étape suivante consiste à remplir le document avec des informations utiles.

 

 

L'adjonction à un document Microsoft Word avec C #

Le programmeur C # ajoute le contenu d'un document Microsoft Word en ajoutant des points :

 

 Word.Paragraph oPara1;

 oPara1 = oDoc.Paragraphs.Add(ref oMissing);

Toute mise en forme du paragraphe  peut avoir lieu à ce stade. Par exemple, le paragraphe peut être transformé en un titre :

 

 object styleHeading1 = "Heading1";

 

oPara1.Range.set_Style(ref styleHeading1);

Le programmeur peut ajouter du texte à l'alinéa :

 

 oPara1.Range.Text = "Create a New Report";

Si en outre les paragraphes doivent être ajoutés puis un décompte final est nécessaire :

 oPara1.Range.InsertParagraphAfter();

 

Cette déclaration assure que l'ajout de nouveaux paragraphes ne va pas écraser l'existant. Tout nouveau  paragraphe est  ajouté  exactement de la même manière :

 

 word.Paragraph oPara2;

oPara2 = oDoc.Paragraphs.Add(ref oMissing);

oPara2.Range.text = "This is my first paragraph.";

oPara2.Range.InsertParagraphAfter();

Word.Paragraph oPara3;

oPara3 = oDoc.Paragraphs.Add(ref oMissing);

oPara3.Range.text = "This is my second paragraph.";

oPara3.Range.InsertParagraphAfter();

Dans l'exemple ci-dessus les nouveaux paragraphes auront  juste le formatage par défaut.

 

 

 

Enregistrement d'un document Microsoft Word avec C #

Une fois que le document contient toutes les informations nécessaires,  il peut être enregistré :

object filename = "C:\\Reports\\daily_report.doc";

oDoc.SaveAs (ref filename,

ref oMissing, ref oMissing,

ref oMissing, ref oMissing,

ref oMissing, ref oMissing,

ref oMissing, ref oMissing,

ref oMissing, ref oMissing);

 

 

Toutefois, il convient de noter que cette opération écrase un fichier existant du même nom.

Fermeture d'un document Microsoft Word

Enfin, le document peut être fermé :

 

oDoc.Close( ref oMissing, ref oMissing, ref oMissing);

 

        oWord.Quit(ref oMissing, ref oMissing, ref oMissing);

        oWord = null;

 

 

 Vous libérez toute la mémoire utilisée.

À ce stade, le compilateur peut vous donner un avertissement ambigu.  C'est parce qu'il y a  les méthodes d'abandon et d’événements. Toutefois, le compilateur va résoudre l'ambiguïté elle-même et l'application fonctionnera comme prévu.

A la fin du processus de l'application on produit un nouveau document Microsoft Word qui est entièrement formaté et contient les informations prévues par le programmeur.

 

 

 

C#

Add comment




  Country flag

biuquote
  • Comment
  • Preview
Loading

captcha

*