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