Exporter des données vers excel [Résolu]

Messages postés
69
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
24 février 2010
- - Dernière réponse : malakrouhhi
Messages postés
69
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
24 février 2010
- 14 déc. 2009 à 12:19
Bonjour,

ben mon problème c'est que j'ai une application sous vb.net2008/sql server2005
et je veux exporter des données bien spécifiques de la base de données vers excel

Merci
Cordialement
Afficher la suite 

9 réponses

Meilleure réponse
Messages postés
69
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
24 février 2010
2
3
Merci
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim str As String
str = "SELECT * from table"
Dim adp As New OleDb.OleDbDataAdapter(str, conn)
Try
ComDset.Reset()
adp.Fill(ComDset)
DataGridView1.DataSource = ComDset.Tables(0)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub

Private Sub Load_Excel_Details()
'Extracting from database
Dim str, filename As String
Dim col, row As Integer
str = "SELECT * from table"
Dim adp As New OleDb.OleDbDataAdapter(str, conn)
Try
ComDset.Reset()
adp.Fill(ComDset)
If ComDset.Tables.Count < 0 Or ComDset.Tables(0).Rows.Count <= 0 Then
Exit Sub
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
Dim Excel As Object = CreateObject("Excel.Application")
If Excel Is Nothing Then
MsgBox("It appears that Excel is not installed on this machine. This operation requires MS Excel to be installed on this machine.", MsgBoxStyle.Critical)
Return
End If


'Export to Excel process
Try
With Excel
.SheetsInNewWorkbook = 1
.Workbooks.Add()
.Worksheets(1).Select()

Dim i As Integer = 1
For col = 0 To ComDset.Tables(0).Columns.Count - 1
.cells(1, i).value = ComDset.Tables(0).Columns(col).ColumnName
.cells(1, i).EntireRow.Font.Bold = True
i += 1
Next
i = 2
Dim k As Integer = 1
For col = 0 To ComDset.Tables(0).Columns.Count - 1
i = 2
For row = 0 To ComDset.Tables(0).Rows.Count - 1
.Cells(i, k).Value = ComDset.Tables(0).Rows(row).ItemArray(col)
i += 1
Next
k += 1
Next
filename = "c:\File_Exported" & Format(Now(), "dd-MM-yyyy_hh-mm-ss") & ".xls"
.ActiveCell.Worksheet.SaveAs(filename)
End With
System.Runtime.InteropServices.Marshal.ReleaseComObject(Excel)
Excel = Nothing
MsgBox("Data's are exported to Excel Succesfully in '" & filename & "'", MsgBoxStyle.Information)

Catch ex As Exception
MsgBox("2 " & ex.Message)
End Try

' The excel is created and opened for insert value. We most close this excel using this system
Dim pro() As Process = System.Diagnostics.Process.GetProcessesByName("EXCEL")
For Each i As Process In pro
i.Kill()
Next

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Load_Excel_Details()
End Sub

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 122 internautes nous ont dit merci ce mois-ci

Commenter la réponse de malakrouhhi
Messages postés
69
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
24 février 2010
2
3
Merci
Voici le code pour exporter toute une table vers excel,


Si il vous donne cette erreur :

Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))


alors il faut changer "Regional and Language Option"
et aller sur "Customise" et la changer en "English united state"

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 122 internautes nous ont dit merci ce mois-ci

Commenter la réponse de malakrouhhi
Messages postés
69
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
24 février 2010
2
3
Merci
et noubliez pas les béblio:

Imports System.Data
Imports System.Data.SqlClient
Imports System.IO
Imports Microsoft.Office.Interop.Excel
Imports Microsoft.Office.Interop
Imports System.Runtime.InteropServices.Marshal
Imports System.Data.OleDb

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 122 internautes nous ont dit merci ce mois-ci

Commenter la réponse de malakrouhhi
Messages postés
69
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
24 février 2010
2
0
Merci
Pe'rsonne pour me repondre!!!!!!!!!!!!!!!!!??????????
Commenter la réponse de malakrouhhi
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
211
0
Merci
Bonjour,
tu as jusqu'à présent uniquement exposé ce que tu cherchais à faire (ce n'est pas là une question).
Dis-nous ce que tu as tenté dans ce sens et pose une question sur la partie spécifique qui te pose problème (c'est le principe de ce forum). Tu auras ainsi des chances de recevoir une réponse


____________________
Très intéressante fable, L'OISELEUR, L'AUTOUR ET L'ALOUETTE !
Cliquer sur "Réponse acceptée" (en bas d'une solution avérée adéquate) rendra service à d'autres. PENSEZ-Y.
Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
211
0
Merci
J'appelle par ailleurs ton attention sur la présence, au bas de cette page, d'une rubrique intitulée : Sujets en rapport avec ce message.
L'as-tu parcourue ? (je te le conseille).


____________________
Très intéressante fable, L'OISELEUR, L'AUTOUR ET L'ALOUETTE !
Cliquer sur "Réponse acceptée" (en bas d'une solution avérée adéquate) rendra service à d'autres. PENSEZ-Y.
Commenter la réponse de ucfoutu
Messages postés
69
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
24 février 2010
2
0
Merci
Merci "ucfoutu"
ben pour le parcours je l'ai deja fait!!
car c'est la première chose que je fais lorsque j'ai un problème!!!

et pour ma question :
Comment exporter des données depuis la base de données vers un fichier excel à l'aide de vb.net bien sur(version 2008)???????????????????????????


et merci encore une fois
Commenter la réponse de malakrouhhi
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
211
0
Merci
Ah...
As-tu au moins passé la toute première étape (constituer un recorset des données à exporter) ?
C'est le préalable indispensable, avant même de parler d'exportation.

J'appelle également ton attention sur le fait qu'il est beaucoup plus simple de le faire "dans l'autre sens", à savoir l'importation, depuis Excel, de tes données

____________________
Très intéressante fable, L'OISELEUR, L'AUTOUR ET L'ALOUETTE !
Cliquer sur "Réponse acceptée" (en bas d'une solution avérée adéquate) rendra service à d'autres. PENSEZ-Y.
Commenter la réponse de ucfoutu
Messages postés
69
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
24 février 2010
2
0
Merci
j'ai deja une base de données que je l'appel pour remplir une datagridview ou bien listview mais ils m'ont demandé de faire un imprimé (excel) pour certaine données qui existe deja dans la base de données
Commenter la réponse de malakrouhhi