Dernière mise à jour le 25/03/16

Présentation


La programmation qui va suivre est une amélioration du transfert de données. En effet nous allons utiliser un DataGridView. Afin d’avoir un aperçu visuel et “vivant” une petite vidéo de démonstration disponible dans la rubrique “prototype en vidéo”. Avec un simple clic sur le bouton le DataGrid view export toutes ces données dans le fichier Excel.
 




 

Programmation en C#


Attention!! il ne faut pas oublier d’ajouter la référence “Microsoft Excel”, et ensuite il ne restera plus qu’à copier et coller la programmation en C# ci-dessous.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Diagnostics;
using Excel = Microsoft.Office.Interop.Excel; //importer la référence office 

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {

            var ExcelApp = new Excel.Application();
            var wb = ExcelApp.Workbooks.Add(1); // déclaration variable pour ouvrir un fichier Excel - WorkBooks
            var ws = wb.Worksheets[1]; // déclaration variable WorkSheets - [1] = sheets 1 / [2] = sheets 2 / ... 

            ExcelApp.Visible = true;

            dataGridView1.ColumnCount = 3; // ajouter 3 colonnes

            dataGridView1.Columns[0].Name = "Colonne A"; // Titre colonne A
            dataGridView1.Columns[1].Name = "Colonne B"; // Titre colonne A
            dataGridView1.Columns[2].Name = "Colonne C"; // Titre colonne A

            ws.Cells[1, 1] = dataGridView1.Columns[0].Name; // On met le titre dans ligne 1 colonne 1 
            ws.Cells[1, 2] = dataGridView1.Columns[1].Name; // On met le titre dans ligne 1 colonne 2 
            ws.Cells[1, 3] = dataGridView1.Columns[2].Name; // On met le titre dans ligne 1 colonne 3 
        }
    }
}

Autre exemple
L’exemple ci-dessous montre qu’il est possible en changeant quelque ligne du programme de pouvoir ouvrir un fichier Excel en fonction de son chemin. Remplacer la procédure “Private void button1_click(object sender, EventArgs e) par la procédure ci-dessous.

private void button1_Click(object sender, EventArgs e)
        {

            var ExcelApp = new Excel.Application();
            var wb = ExcelApp.Workbooks.Open(@"C:\Users\Julien\Desktop\Classeur1.xlsx"); // déclaration variable pour ouvrir le classeur 
            var ws = wb.Worksheets[1]; // déclaration variable WorkSheets - [1] = sheets 1 / [2] = sheets 2 / ... 

            ExcelApp.Visible = true;

            dataGridView1.ColumnCount = 3; // ajouter 3 colonnes

            dataGridView1.Columns[0].Name = "Colonne A"; // Titre colonne A
            dataGridView1.Columns[1].Name = "Colonne B"; // Titre colonne A
            dataGridView1.Columns[2].Name = "Colonne C"; // Titre colonne A

            ws.Cells[1, 1] = dataGridView1.Columns[0].Name; // On met le titre dans ligne 1 colonne 1 
            ws.Cells[1, 2] = dataGridView1.Columns[1].Name; // On met le titre dans ligne 1 colonne 2 
            ws.Cells[1, 3] = dataGridView1.Columns[2].Name; // On met le titre dans ligne 1 colonne 3 
        }

Prototype en vidéo


 

Vidéo cela ne change pas!!

Historiques


25/03/16
– Première mise à disposition