begin process at 2012 02 16 20:12:23
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de Donnees

 >  [.NET] EXPORT DATASET TO EXCEL

[.NET] EXPORT DATASET TO EXCEL


 Information sur la source

Note :
7,67 / 10 - par 3 personnes
7,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de Donnees Niveau :Débutant Date de création :19/08/2004 Date de mise à jour :19/08/2004 17:52:17 Vu :16 674

Auteur : Epoque51

Ecrire un message privé
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

Juste une tite fonction qui copie le contenu d'un dataset dans un fichier excel en .NET.
J'ai eu du mal a trouver la methode donc je pense que ca peut etre un post utile.

Source

  • Function plop()
  • Dim ds As New DataSet
  • Dim dv0 As New DataView
  • Dim dv1 As New DataView
  • Dim i As Integer
  • Dim MyExcel As Excel.Application
  • Dim MyWorkBook As Excel.Workbook
  • Dim MyWorkSheet As Excel.Worksheet
  • ds.ReadXml("file.xml")
  • 'init Dataviews & bindings
  • dv0 = ds.DefaultViewManager.CreateDataView(ds.Tables(0))
  • dv1 = ds.DefaultViewManager.CreateDataView(ds.Tables(1))
  • MyExcel = New Excel.Application
  • MyExcel.Visible = False 'Excel will not open
  • MyWorkBook = MyExcel.Workbooks.Add
  • MyWorkSheet = MyWorkBook.ActiveSheet
  • ' Export Datas
  • MyWorkSheet.Cells(1, 1) = "tab1"
  • MyWorkSheet.Cells(1, 2) = "tab2"
  • MyWorkSheet.Cells(1, 1).Font.Bold = True
  • MyWorkSheet.Cells(1, 2).Font.Bold = True
  • Dim dr As DataRowView
  • i = 2
  • For Each dr In dv0
  • MyWorkSheet.Cells(i, 1) = dr.Item("tab1col")
  • i = i + 1
  • Next
  • i = 2
  • For Each dr In dv1
  • MyWorkSheet.Cells(i, 2) = dr.Item("tab2col")
  • i = i + 1
  • Next
  • 'Autofit the cells
  • MyWorkSheet.Cells(1, 1).CurrentRegion.EntireColumn.AutoFit()
  • 'Save & Close
  • MyWorkBook.SaveAS("C:\file.xls")
  • MyWorkBook.Close()
  • End Function
 Function plop()
Dim ds As New DataSet
Dim dv0 As New DataView
Dim dv1 As New DataView
Dim i As Integer
Dim MyExcel As Excel.Application
Dim MyWorkBook As Excel.Workbook
Dim MyWorkSheet As Excel.Worksheet

ds.ReadXml("file.xml")
'init Dataviews & bindings
dv0 = ds.DefaultViewManager.CreateDataView(ds.Tables(0))
dv1 = ds.DefaultViewManager.CreateDataView(ds.Tables(1))

MyExcel = New Excel.Application
MyExcel.Visible = False 'Excel will not open
MyWorkBook = MyExcel.Workbooks.Add
MyWorkSheet = MyWorkBook.ActiveSheet

' Export Datas
MyWorkSheet.Cells(1, 1) = "tab1"
MyWorkSheet.Cells(1, 2) = "tab2"
MyWorkSheet.Cells(1, 1).Font.Bold = True
MyWorkSheet.Cells(1, 2).Font.Bold = True

Dim dr As DataRowView

i = 2
For Each dr In dv0
MyWorkSheet.Cells(i, 1) = dr.Item("tab1col")
i = i + 1
Next

i = 2
For Each dr In dv1
MyWorkSheet.Cells(i, 2) = dr.Item("tab2col")
i = i + 1
Next

'Autofit the cells
MyWorkSheet.Cells(1, 1).CurrentRegion.EntireColumn.AutoFit()
'Save & Close
MyWorkBook.SaveAS("C:\file.xls")
MyWorkBook.Close()

End Function

 Conclusion

Il faut prealablement loader la reference Microsoft Excel 9.0 Object Library.


 Historique

19 août 2004 17:52:17 :

 Sources de la même categorie

Source avec Zip Source avec une capture BIEN ADMINISTRER LES ETUDIANTS ET LEURS CÔTES par okosa
Source avec Zip VBA EXEL GESTION DE PERSONEL NOUVEAU CONTRAT DE TRAVAI par oudlarbi
Source avec Zip Source avec une capture CREATION D'UN OBJET D'ACCÈS AUX DONNÉES par okosa
Source avec Zip Source .NET (Dotnet) MISAHORAIRE par MdelM
Source avec Zip Source avec une capture BASEDEDONNEES,GESTIONDEMALADES,DATABASSE par shadkitenge

Commentaires et avis

Commentaire de asem67 le 29/08/2004 02:25:01

merci !!!!!

Commentaire de nquere le 23/09/2004 20:10:43

Merci pour ce poste utile.
Je voulais juste savoir comment utiliser avec excel et atteindre une cellule.

C'est cour et concret. Allez, 8/10 ;)

Encore merci !

Commentaire de Benouille le 09/12/2004 17:56:06

il y a beaucoup plus rapide en affectant la source directement par l'objet msquery d'excel.

cela permet par exemple de passer de 3-4 minutes 1 seconde pour un recorset de plusieurs milliers de lignes

la méthode consiste a affecter la source de la requete a excel. PLutot que de le remplir case par case, la requete est lancée puis affectée en un temps record. si ça interresse quelqu'un je ferais des tests et je le posterais.

merci en tout cas pour la source car moi je cherchais la référence a excel et je l'ai eu ici sans avoir à ouvrir un neurone ;)

Commentaire de Benouille le 10/12/2004 11:54:40

j'ai eu besoin de le faire pour moi, je vous envoie donc un lien vers la source posée ici http://www.vbfrance.com/code.aspx?ID=28101

ça fait grosso modo la meme chose en beaucoup plus rapide sur des gros volumes.

Commentaire de Lordthias le 06/06/2006 15:59:29

salut,
bien interessant mais il sort d'ou le "file.xml" ?

Commentaire de surfzoid le 28/07/2007 12:27:37

ds.writexml

Commentaire de chaouline le 09/03/2009 12:10:06

merci !!!!!!!!!!!!!

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,484 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales