Faire un tableau dans Word en C#

TmDsbsBs Messages postés 63 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 20 décembre 2004 - 17 déc. 2004 à 15:07
TmDsbsBs Messages postés 63 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 20 décembre 2004 - 20 déc. 2004 à 11:56
Bonjour,

je souhaite créer un tableau dans un document Word. Ce tableau doit etre rempli avec les données de ma base.

J'ai trouvé quelques sources, mais soit ca ne correspond pas à ca que je veux, soit ca ne marche pas.

Voici ce que j'ai actuellement, mais ca ne marche pas...

private void bouton1__Click(object sender, EventArgs e)
{
object oMissing = System.Reflection.Missing.Value;
object oEndOfDoc = "\\endofdoc"; /* \endofdoc is a predefined bookmark */

//Start Word and create a new document.
Word._Application oWord;
Word._Document oDoc;
oWord = new Word.Application();
oWord.Visible = true;
oDoc = oWord.Documents.Add(ref oMissing, ref oMissing,
ref oMissing, ref oMissing);

//Insert a paragraph at the beginning of the document.
Word.Paragraph oPara1;
oPara1 = oDoc.Content.Paragraphs.Add(ref oMissing);
oPara1.Range.Text = "Heading 1";
oPara1.Range.Font.Bold = 1;
oPara1.Format.SpaceAfter = 24;    //24 pt spacing after paragraph.
oPara1.Range.InsertParagraphAfter();

//Insert a 3 x 5 table, fill it with data, and make the first row
//bold and italic.
Word.Table oTable;
Word.Range wrdRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
oTable = oDoc.Tables.Add(wrdRng, 3, 5, ref oMissing, ref oMissing);
oTable.Range.ParagraphFormat.SpaceAfter = 6;
int r, c;
string strText;
for(r = 1; r <= 3; r++)
for(c = 1; c <= 5; c++)
{
strText = "r" + r + "c" + c;
oTable.Cell(r, c).Range.Text = strText;
}
oTable.Rows[1].Range.Font.Bold = 1;
oTable.Rows[1].Range.Font.Italic = 1;

//Close this form.
oDoc.Close(ref oMissing,ref oMissing,ref oMissing); 

oWord.Quit(ref oMissing,ref oMissing,ref oMissing); 
oDoc = null; 

oWord = null;
}


=> Le probleme est sur le "get_Item" ; ca me dit qu'il n'est pas defini.

Si quelqu'un a une piste...

Merci.

4 réponses

APWEB Messages postés 74 Date d'inscription lundi 30 juin 2003 Statut Membre Dernière intervention 18 octobre 2006 2
17 déc. 2004 à 18:49
Et si tu remplace Get_Item par Item ??
Get_Item n'existe pas dans les ref. de Word.Bookmarks alors que Item oui...
AP
0
TmDsbsBs Messages postés 63 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 20 décembre 2004 3
20 déc. 2004 à 10:14
Merci...

J'y avais bien pensé, ms ja ne savais pas si c'était équivalent...

Et en tout cas, ca ne marche pas ; ma page ne s'affiche pas ms ne me renvoie aucun message d'erreur, meme avec un try...catch.

Je ne vois vraiment pas comment faire...
0
APWEB Messages postés 74 Date d'inscription lundi 30 juin 2003 Statut Membre Dernière intervention 18 octobre 2006 2
20 déc. 2004 à 10:47
Désolé mais je ne connais pas trop Word et la création de tableau.
Es-tu obligé d'utilisé Word ?? et pas excel ??
Sauvegardes-tu ton fichier avant de le fermer ?? tu pourrais toujours l'ouvrir apres ??
Et si tu supprime oWord.Quit ?? parce que a ce moment la il ferme tout et je pense sans sauvegarde puisque tu as des oMissing partout ..??

AP
0
TmDsbsBs Messages postés 63 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 20 décembre 2004 3
20 déc. 2004 à 11:56
J'ai supprimé oWord.Quit, j'ai rajouté oWord.SaveAs, mais rien n'y fait...

Je vais voir si je peux mettre les données dans Excel, ca sera plus simple dans un premier temps.

Merci.
0
Rejoignez-nous