Forum Clubic

[VB.NET] (Résolu) Comment lire fichier Excel via chaine de connection

Bonsoir à tous,

Je possède Visual studio.Net 2003 et j’ai un peu du mal pour lire simplement le contenu d’un fichier excel via une chaine de connection…

Pour une base de données access ce n’est pas trop compliqué
[cpp]
Imports System.Data
Imports System.Data.OleDb
Dim cn As New OleDbConnection(Provider=Microsoft.Jet.OLEDB.4.0;" _
& “Data Source=Ma Base de données.mdb”)
cn.Open()

[/cpp]

Alors Merci si vous savez m’aider pour un fichier Excel

(Sous Windows XP Pro)

je comprend pas pourquoi ceci ne marche pas :??:
[cpp]
Imports System.Data
Imports System.Data.Odbc
Dim cn As New OdbcConnection(“Driver={Microsoft Excel Driver (*.xls)}; DBQ=” & “C:\Ma Base de données.xls”)
cn.Open()

[/cpp]

Merci de votre précieuse aide :fou:

ODBC fonctionne parfaitement avec une base de données access…
[cpp]
Imports System.Data
Imports System.Data.Odbc
Dim cn As New OdbcConnection(“Driver={Microsoft Access Driver(*.mdb)};” & “DBQ=C:\Base de données.Mdb;”)
[/cpp]

Par contre avec les Drivers Excel voici le message d’erreur
ERROR [HY000] [Microsoft][Pilote ODBC Excel] La table externe n’est pas dans le format attendu.
ERROR [IM006] [Microsoft][Gestionnaire de pilotes ODBC] Échec SQLSetConnectAttr du pilote
ERROR [HY000] [Microsoft][Pilote ODBC Excel] La table externe n’est pas dans le format attendu.

je verais cela demain car :fou: :fou:

Pourtant ce sont des fichiers de MS Office 2003 :??:

OK Résolu : la solution à pris 2 secondes pour des heures de recherche (Merci Bilou) :wink:

Tu peux la donner stp :stuck_out_tongue:

Il n’y en à pas (l’erreur ne se situait pas au niveau de la syntaxe de la chaine de connection)

(OleDb et ODBC fonctionne parfaitement, pour Oledb il faut logiquement rajouter “Extended Properties=Excel 8.0;”)

Le problème venait du fichier Excel… version certainement antérieur MAIS qui fonctionnait sous Excel 2003 :pfff:

Ma première idée fut justement de mettre à jour celui-ci en ajoutant/supprimant des données, mais cela ne fut pas suffisant :frowning:

Après plusieurs heures de recherche, j’ai utiliser “Enregistrer sous…”, et là le fichier passait de ±1Mo à ±100Ko ! Et le fichier Excel fonctionnait correctement :ange:

edit: oui : La table externe n’était pas dans le format attendu !

Microsoft :jap:
:smiley: