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 :

Remplir plusieurs feuilles d'un fichier Excel


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 87
    Par défaut Remplir plusieurs feuilles d'un fichier Excel
    Bonjour mes amis;

    Je viens d'apparendre comment écrire dans un fichier Excel mais dans une seule feuillle, maintenant, il me faudra écrire/remplir 3 feuilles de même classeur Excel.
    Ci-dessous vous trouverez une partie du code qui permet d'écrire simplement dans une seule feuille le mot "Bonjour" dans la première cellule :
    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using Microsoft.Office.Interop.Excel;
     
    namespace testExcel_Interp_
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
     
            Microsoft.Office.Interop.Excel.Application appli;
            Microsoft.Office.Interop.Excel._Workbook classeur;
            Microsoft.Office.Interop.Excel._Worksheet feuille;
            object oMissing = System.Reflection.Missing.Value;
            object oFileName = "c:\\MonFichierExcel.xls";
     
            private void button1_Click(object sender, EventArgs e)
            {
                try
                {
                    appli = new Microsoft.Office.Interop.Excel.Application();
                    appli.Visible = false;
     
                    //---------- création du classeur ---------
                    classeur = (Microsoft.Office.Interop.Excel._Workbook)(appli.Workbooks.Add(oMissing));
     
                    //------ activer la feuille ----------
                    feuille = (Microsoft.Office.Interop.Excel._Worksheet)classeur.ActiveSheet;
     
                    //Remplir les en-têtes
                    feuille.Cells[1, 1] = "Nom";
                    feuille.Cells[1, 2] = "Prénom";
                    feuille.Cells[1, 3] = "Age";
     
                    //----- Auto-Enregistrement ---------------
                    classeur.Close(true, oFileName, oMissing);
                }
                catch (Exception ex) { MessageBox.Show("erruer est: " + ex.Message); }
                finally
                {
                    //----- Quitter ------
                    feuille = null;
                    classeur = null;
                    appli.Quit();
                    appli = null;
                }
            }
        }
    }
    Ce code a pour resultat: la création d'un fichier Excel qui contient Nom, Prénom, Age comme en-tête de la première feuille, mais ce que j'aimerai faire moi, c'est remplir 4 feuilles dans le même classeur, avec des données différentes.
    Question:
    Comment remplir plus qu'une feuille dans un même fichier Excel ?

    please, n'hésitez surtout pas à me communiquer si vous avez des propositions.
    ______________________________________
    Rien n'est impossible, il suffit de savoir comment !

  2. #2
    Membre chevronné Avatar de MetalGeek
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 412
    Par défaut
    Salut,
    tu peux accéder aux feuilles d'un classeur par leur index ou par leur nom, ex :
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    classeur.Sheets["feuil1"]
    Deux notes importantes :
    - sous Excel, les index partent de 1 et pas de 0
    - l'indexation ci-dessus renvoie un type Object, que tu devras caster pour accéder aux propriétés de la feuille :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (_Worksheet)classeur.Sheets[1]

  3. #3
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 87
    Par défaut
    Re,

    Merci à fond Monsieur MetalGeek vous me résoudrez un problème que j'en cherchais la réponse depuis plus de 2 semaines (je travaillais sans cour sans aide)

    Merci à toi, et Merci à developpez.net
    ___________________________________
    Rien n'est impossible, il suffit de savoir comment !

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 27/01/2010, 08h59
  2. [WD10] Parcourir plusieurs feuilles d'un tableur Excel
    Par lemerite dans le forum WinDev
    Réponses: 8
    Dernier message: 22/02/2008, 11h07
  3. renommer une feuille d'un fichier excel depuis Access en VBA
    Par alexkickstand dans le forum VBA Access
    Réponses: 2
    Dernier message: 23/08/2007, 17h55
  4. Remplir les colonnes d'un fichier excel
    Par craryb dans le forum MFC
    Réponses: 3
    Dernier message: 14/03/2007, 12h37
  5. Obtenir la liste des feuilles d'un fichier Excel
    Par Jean Bonnisme dans le forum Access
    Réponses: 3
    Dernier message: 15/10/2004, 10h53

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