Quand j'ouvre un fichier excel (en piece jointe) en utilisant la commande suivante
Dim connect As System.Data.OleDb.OleDbConnection
Dim adapter As System.Data.OleDb.OleDbDataAdapter
Dim dataset As New System.Data.DataSet()
Dim pathname As String = My.Application.Info.DirectoryPath + "\Test File.xls"
connect = New System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;" & "data source=" & pathname & ";Extended Properties=Excel 8.0;")
adapter = New System.Data.OleDb.OleDbDataAdapter("select * from [From To List$]", connect)
connect.Open()
adapter.Fill(dataset)
DataGridView1.DataSource = dataset.Tables(0)
adapter.Fill(dataset.Tables(0))
connect.Close()
J'ai des cellules vide dans ma grille qui ne sont pas vide dans le fichier excel, je sais qu'il y a une autre facon de lire chaque cellule une a la fois, mais quand j'ouvre un fichier de 15,000 cellules, le délai est trop long. Avec cette commande, le délai est de 4 ou 5 secondes contrairement a l'autre qui prend entre 30 et 40 secondes, Lorsque je doit ouvrir 20 fichier, le délai est trop long en utilisant la commande pour chaque cellule.
Y as t'il quelque chose qui manque dans ma commande? ou y a t'il une autre facon?
Merci
Partager