Bonjour
On (le patron) m'a chargé de mettre en forme un fichier reçu en Excel. C'est un compte rendu d'information sur des clients placer dans un tableau :
Exemple :
colonne B Nom
colonne C Prenom
colonne D téléphone,
...
Après avoir fouillé sur le forum et d'autres sites mon choix s'est porté sur le C# au lieu du VBA. Puisque je suis originaire du C++ alors je me suis dit que l'apprentissage serais plus simple.
Donc j'ai réussi à récupérer les informations du fichier Excel. J'ai réussi à écrire toutes les informations dans un fichier Word de la manière suivante :
La "procédure" écrire dans le fichier Word est dans un for pour écrire le descriptif pour tous les clients. J'ai donné le résultat au patron résultat "pas content". J'ai besoin de mettre en forme le tout.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Word.Application appWord = new Word.Application(); Word.Document docWord = new Word.Document(); appWord.Visible = true; docWord.Activate(); // écrire dans le fichier Word docWord.Content.InsertAfter("Nom : " + client.nom + " "); docWord.Content.InsertAfter("Prénom : " + client.prenom + "\n"); // ...
- Ajouter le logo de l'entreprise en en-tête
- Ajouter d'autre image en pied de page
- Sauter une page après chaque client
- Mettre en Gras le nom
- Présenter certaine information dans un tableau
Mettre en gras j'ai un peu fouillé et j'ai trouvé :
docWord.Content.Font.Bold = 1;
docWord.Content.Font.Bold = 0;
Mais lorsque je fais celà il y a un clignotement de tout le texte en "gras", "pas gras", lors de l'écriture.
J'ai essaye appWord.Selection.BoldRun(); Le texte est tous gras. Alors que lorsque je fais appWord.Selection.TypeText("texte à ajouter"); puis que j'encadre une partie du texte par appWord.Selection.BoldRun(); seule cette partie est grasse. En ce qui concerne le tableau j'ai réussi à faire un tableau mais après je n'est pas réussi à écrire après le tableau puis ni même à choisir la case où j'ai voulu écrire. Toutes les informations s'écrivent dans la première case et comme le tous est dans un for j'ai une création d'autant de tableau qu'il y a de client.
En ce qui concerne l'ajout d'une en-tête et pied de page, puis l'insertion d'image je n'est aucune idée de la procédure, puis le saut de page.
Donc je vous demande de l'aide. Et comme d'habitude le projet était à rendre pour avant hier... Merci à tous ceux qui m'aiderons.
PS : Je travaille avec le COM 10.0 Word, Excel, Office. Plusieurs cours trouvé sur le site parle de COM Interop que je n'est pas. Aussi j'ai une autre question est ce que si je donne mon application sur Vista sera-t-elle fonctionnelle ? En gros la question quel FrameWork .Net est installé sur Vista par défaut ?
Merci au lecteur et surtout au "répondeur"...
Partager