Récupérer nom feuille excel

Résolu
AnoTreL
Messages postés
27
Date d'inscription
jeudi 18 mai 2006
Statut
Membre
Dernière intervention
16 janvier 2008
- 21 nov. 2006 à 16:08
Whismeril
Messages postés
17682
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
16 août 2022
- 27 juil. 2018 à 10:24
Bonjour,

Je voudrais savoir comment récupérer le nom d'une feuille excel.
(La connexion au fichier excel est déjà établie)

4 réponses

cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
99
25 nov. 2006 à 00:09
Salut,

Si par connexion tu parles bien d'un accès via une connexion OleDb, tu peux te servir dans la fonction GetOleDbSchemaTable, comme c'est fait par exemple ici : http://support.microsoft.com/kb/318452/en-us

/*
coq
MVP Visual C#
CoqBlog
*/
3
gruf
Messages postés
29
Date d'inscription
jeudi 18 janvier 2018
Statut
Membre
Dernière intervention
25 octobre 2018

27 juil. 2018 à 09:59
bonjour, le lien "http://support.microsoft.com/kb/318452/en-us" ne marche plus
0
Whismeril
Messages postés
17682
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
16 août 2022
613 > gruf
Messages postés
29
Date d'inscription
jeudi 18 janvier 2018
Statut
Membre
Dernière intervention
25 octobre 2018

27 juil. 2018 à 10:24
12 ans après ça t'étonnes?
Il serait plus judicieux que tu ouvres un nouveau sujet où tu décriras ton besoin
0
AnoTreL
Messages postés
27
Date d'inscription
jeudi 18 mai 2006
Statut
Membre
Dernière intervention
16 janvier 2008

28 nov. 2006 à 09:47
Merci, c'était tout à fait ça et ça marche
0
AnoTreL
Messages postés
27
Date d'inscription
jeudi 18 mai 2006
Statut
Membre
Dernière intervention
16 janvier 2008

28 nov. 2006 à 16:18
J'ai un autre problème maintenant, c'est que une fois que j'ai récuperé les noms de mes feuilles excel dans un DataTable, il les trie automatiquement par nom, du coup je sais plus quelle est ma feuille 1, est-ce que qqn sait comment faire pour qu'il n'y ait pas de tri ?

voilà un bout de mon code:



OleDbConnection
excelConnexion =

new



OleDbConnection
(

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+ cheminFichierXls +

";Extended Properties="Excel 8.0;HDR=Yes;IMEX=1""
);
excelCommand.Connection = excelConnexion;

excelConnexion.Open();




DataTable
FeuillesExcel = excelConnexion.GetOleDbSchemaTable(System.Data.OleDb.

OleDbSchemaGuid
.Tables,

new



Object
[] {

null
,

null
,

null
,

"TABLE"
});


string
NomFeuille = FeuillesExcel.Rows[indiceFeuille][

"TABLE_NAME"
].ToString();
0
cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
99
2 déc. 2006 à 21:00
A ma connaissance tu ne pourras pas, à moins qu'il existe un autre provider OleDb pour Excel qui retourne cette liste sans la trier par ordre alphabétique.
En plus quand on considère le fonctionnement d'un SGBD en général l'ordre des tables n'a pas vraiment d'existence réelle, seul l'ordre des colonnes y est important (bien qu'il vaut mieux éviter de se baser dessus)

/*
coq
MVP Visual C#
CoqBlog
*/
0