IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Microsoft Word et C#


Sujet :

C#

  1. #1
    Membre averti
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Par défaut Microsoft Word et C#
    Bonjour à tous,
    Je fais une application en c# qui consiste à gérer un stock.. donc je travaille avec du C#, MySql, etc.. Et il faut que je puisse sortir des factures donc je me suis dit que je vais créer un modèle .docx. Dans ce modèle j'aurais les différents champs à remplir automatiquement : nom,prénom,... articles,quantité,...etc etc ...

    Mais je ne trouve pas comment remplir ces champs depuis C# ... ni comment se nomme les champs ...

    Si quelqu'un pourrait m'éclaircir ça serait sympa !

  2. #2
    Membre éclairé
    Avatar de exe2bin
    Profil pro
    Passionné de programmation
    Inscrit en
    Mars 2009
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Passionné de programmation

    Informations forums :
    Inscription : Mars 2009
    Messages : 537
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par lilmemt Voir le message
    Si quelqu'un pourrait m'éclaircir ça serait sympa !
    Si tu pouvais nous éclaircir avec quelques bouts de ton code ça serait sympa aussi !!

  3. #3
    Membre actif
    Homme Profil pro
    Architecte C#
    Inscrit en
    Février 2003
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte C#

    Informations forums :
    Inscription : Février 2003
    Messages : 78
    Par défaut
    Bonjour, je te suggère plutot de sortir des pages htmls (avec un moteur de template si tu es en client riche). les modèles words peuvent paraitre sympas jusqu'a ce que tu ais à gérer des listes (dans ton cas des listes d'articles).

    Bon courage

  4. #4
    Membre averti
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Par défaut
    alors pour le code j'en suis qu'à ça (je fais la partie word séparé pour pas salir mon code)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using Microsoft.Office.Interop.Word;
     
    namespace testword
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
     
            private void button1_Click(object sender, EventArgs e)
            {
                object field;
                Microsoft.Office.Interop.Word.Application msWord = new Microsoft.Office.Interop.Word.Application();
                msWord.Visible = true;
                object missing = System.Reflection.Missing.Value;
                Microsoft.Office.Interop.Word.Document nvDoc;
                // Choisir le template
                object templateName = @"C:\Users\onganme\Desktop\testword\testword\testword\bin\Debug\Facture.docx";
                // Créer le document
                nvDoc = msWord.Documents.Add(ref templateName, ref missing, ref missing, ref missing);
                field = "nomClient";
                nvDoc.FormFields.get_Item(ref field).Result = "Ongan Mehmet";
                field = "adresse";
                nvDoc.FormFields.get_Item(ref field).Result = "Grande Rue";
                field = "villeNpa";
                nvDoc.FormFields.get_Item(ref field).Result = "2000 Neuchâtel";
     
     
                // Attribuer le nom
                object fileName = @"C:\Users\onganme\Desktop\testword\testword\testword\bin\Debug\Facture_client.doc";
                // Sauver le document
                nvDoc.SaveAs(fileName);
     
                nvDoc.Close(ref missing, ref missing, ref missing);
                msWord.Quit(ref missing, ref missing, ref missing);
            }
        }
    }
    Voilà ... mais j'ai une erreur au niveau du
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    field = "nomClient";
                nvDoc.FormFields.get_Item(ref field).Result = "Ongan Mehmet";
    qui me donne une erreur avec un HRESULT etc...

    Le modèle en docx est fourni en pièce jointe...


    PS: J'ai fait par rapport au tuto proposé par developpez.net ...
    Fichiers attachés Fichiers attachés

  5. #5
    Membre averti
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Par défaut
    C'est tout bon j'ai trouvé comment faire.

    Il suffit d'ajouter l'onglet "Développeur" ensuite ajouter des champs depuis cet onglet et les nommer comme bon vous sembles. Puis depuis C# utiliser ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      nvDoc.FormFields.get_Item("nomClient").Result = tbxNom.Text + " " + tbxPrenom.Text;

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB6]Utilser le dictionnaire de Microsoft Word ?
    Par ProgElecT dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 05/06/2019, 11h51
  2. Référence Microsoft Word
    Par avigeilpro dans le forum VBA Word
    Réponses: 15
    Dernier message: 29/01/2019, 14h44
  3. Lancement de Microsoft Word depuis mon application
    Par Tunka dans le forum Windows
    Réponses: 1
    Dernier message: 04/10/2006, 15h35
  4. [COM] PHP et COM pour Microsoft Word
    Par lhulard dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 16/05/2006, 20h02
  5. [Microsoft Word] Création de modèles
    Par Furius dans le forum Word
    Réponses: 5
    Dernier message: 03/11/2005, 21h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo