Récupérer nom feuille excel [Résolu]

Messages postés
27
Date d'inscription
jeudi 18 mai 2006
Dernière intervention
16 janvier 2008
- - Dernière réponse : Whismeril
Messages postés
12558
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
15 janvier 2019
- 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)
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
88
3
Merci
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
*/

Dire « Merci » 3

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CodeS-SourceS

Codes Sources 122 internautes nous ont dit merci ce mois-ci

gruf
Messages postés
29
Date d'inscription
jeudi 18 janvier 2018
Dernière intervention
25 octobre 2018
-
bonjour, le lien "http://support.microsoft.com/kb/318452/en-us" ne marche plus
Whismeril
Messages postés
12558
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
15 janvier 2019
759 > gruf
Messages postés
29
Date d'inscription
jeudi 18 janvier 2018
Dernière intervention
25 octobre 2018
-
12 ans après ça t'étonnes?
Il serait plus judicieux que tu ouvres un nouveau sujet où tu décriras ton besoin
Commenter la réponse de cs_coq
Messages postés
27
Date d'inscription
jeudi 18 mai 2006
Dernière intervention
16 janvier 2008
0
Merci
Merci, c'était tout à fait ça et ça marche
Commenter la réponse de AnoTreL
Messages postés
27
Date d'inscription
jeudi 18 mai 2006
Dernière intervention
16 janvier 2008
0
Merci
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();
Commenter la réponse de AnoTreL
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
88
0
Merci
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
*/
Commenter la réponse de cs_coq

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.