Je suis en train de lire un fichier excel qui a plusieurs feuilles 1,2,3,4,5,6,7,8,9,10
J'ai besoin de lire plusieurs colonnes de ce qui est dans les fiches, par exemple à partir de la plage a1: a20 et c1: c20
Le résultat est une liste dans un listview, je suis en train d'essayer avec plusieurs suggestions qui apparaissent dans le forum, mais il ne me permet de lire une feuille et j'ai besoin de lire plusieurs en même temps. De toute façon j'ai mis le code que j'utilise.
Merci d'avance
Public Class Frm_ImportarLibro
Public Function Obtenerdatos(ByVal ruta As String, ByVal hoja As String, ByVal rango As String) As DataTable
Dim cadenaConexion As String = "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties='Excel 8.0;HDR=NO';" &
"Data Source=" & ruta
Using cnn As New OleDbConnection(cadenaConexion)
Dim cmd As OleDbCommand = cnn.CreateCommand()
cmd.CommandText = String.Format("SELECT * FROM [{0}${1}]", hoja, rango)
Dim da As New OleDbDataAdapter(cmd)
Dim dtTemp As New DataTable("Prueba")
da.Fill(dtTemp)
Dim dt As DataTable = dtTemp.Clone()
Dim rows As DataRow() = dtTemp.Select()
For index As Integer = 0 To rows.Count - 1
Dim row As DataRow = rows(index)
If (row.Item(0) Is DBNull.Value) Then
Exit For
End If
dt.ImportRow(row)
Next
Return dt
End Using
End Function