Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

générer un fichier excel en winform avec vb.net

2 réponses
Avatar
julieD
bonjour =E0 tous,

je voudrai g=E9n=E9rer automatiquement un fichier excel =E0 partir d'un
datagrid par un simple click sur un bouton.

est ce possible?

je d=E9veloppe en vb.net (winform)
merci pour vos r=E9ponses

julie D

2 réponses

Avatar
TroXsA
Bonjour,

Comment ecrire dans un fichier excel, j'espere que c'est ce que tu recherche
! :)
http://www.troxsa.info/index.php?option=com_content&task=view&idG&Itemid=2




Cordialement,

Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl


"julieD" a écrit dans le message de news:

bonjour à tous,

je voudrai générer automatiquement un fichier excel à partir d'un
datagrid par un simple click sur un bouton.

est ce possible?

je développe en vb.net (winform)
merci pour vos réponses

julie D
Avatar
Thierry HUGUET [MS]
Ci-dessous, un exemple de code VB.NET saveToCSV() qui crée un fichier CSV
dans lequel sont copiées toutes les lignes d'un controle DataGridView.

Usage : Sub saveToCSV(ByVal myRows As DataGridViewRowCollection, ByVal
filename As String, ByVal delimiter As Char)
dataGridViewRowCollection: collection d'un controle DataGridView
filename : nom du fichier à créer
delimiter : caractère délimiteur de champ pour chaque ligne CSV (e.g.
virgule, point-virgule).

Exemple : Call saveToCSV(DataGridView1.Rows, "c:toto.csv", ","c)

Imports System.IO

Private Sub saveToCSV(ByVal myRows As DataGridViewRowCollection, ByVal
filename As String, ByVal delimiter As Char)

Dim i As Integer 'counter

Dim buffer As New System.Text.StringBuilder()

Dim fw As StreamWriter

fw = New StreamWriter(filename, False, System.Text.Encoding.Unicode)

i = 0

For Each row As DataGridViewRow In myRows

If i = 0 Then 'This is 1st row. So get column header text

For Each cell As DataGridViewCell In row.Cells

buffer.Append(cell.OwningColumn.HeaderText & delimiter)

Next

buffer.Remove(buffer.Length - 1, 1) 'remove last delimiter (e.g ; or ,)

fw.WriteLine(buffer)

End If

If row.IsNewRow Then Exit For 'this row is a new empty row. This is the last
row in the Grid.

'Get all cell values of the current row

buffer.Length = 0

For Each cell As DataGridViewCell In row.Cells

If IsNothing(cell.Value) = False Then

buffer.Append(cell.Value.ToString & delimiter)

Else

buffer.Append(delimiter)

End If

Next

buffer.Remove(buffer.Length - 1, 1) 'remove last delimiter (; or ,)

fw.WriteLine(buffer)

i = i + 1

Next

fw.Close()

End Sub



Il est prévu que cet exemple soit téléchargeable à partir de
http://msdn2.microsoft.com/fr-fr/library/ms364747.aspx (mais le lien sur
'download sample' n'est pas encore à jour). Les abonnés MSDN peuvent se
procurer cet exemple en installation la documentation francaise livrée avec
Visual Studio 2005 Team Foundation.

Cordialement
Thierry HUGUET
Microsoft



"julieD" a écrit dans le message de news:

bonjour à tous,

je voudrai générer automatiquement un fichier excel à partir d'un
datagrid par un simple click sur un bouton.

est ce possible?

je développe en vb.net (winform)
merci pour vos réponses

julie D