"ADO" Récup Nom des Feuilles du Fichier Fermé.

IFFIC

XLDnaute Occasionnel
Bonsoir à tous du Forum,
Et… MERCI pour cette passion que vous m'avez inculquée.
(En toute modestie et balbutiements, pour ma part)

Je bidouille actuellement la méthode 'ADO'
Mais je me heurte sur la récupération du nom des feuilles
du fichier fermé dont j'aimerai bien dresser la liste dans ma feuille active, (Sinon une autre), ou dans une ListBox d'un USF.
(Pour info, par la suite je fais un 'ExecuteExcel4Macro….)

Re-Merci d'avance, car là; je patine GRAVE !!!!!

IFFIC
 

MichelXld

XLDnaute Barbatruc
Re:\"ADO\" Récup Nom des Feuilles du Fichier Fermé.

bonjour Iffic

tu peux tester cette macro pour lister le nom des feuilles d'un classeur fermé


Code:
Sub listeFeuillesClasseurFerme()
'necessite d'activer la reference Microsoft ActiveX Data Objects x.x Library
'necessite d 'activer la reference Microsoft ADO Ext 2.7 for DLL ans Security
Dim Cat As ADOX.Catalog
Dim Fichier As String, xConnect As String, Resultat As String
Dim Cn As ADODB.Connection
Dim Feuille As ADOX.Table
 
Fichier = 'C:\Documents and Settings\michel\dossier\excel\Classeur1.xls'
 
xConnect = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' & Fichier & ';' & _
'Extended Properties=Excel 8.0;' 'preparation connection
 
Set Cat = CreateObject('ADOX.Catalog')
Set Cn = CreateObject('ADODB.Connection')
 
Cn.Open xConnect
Set Cat.ActiveConnection = Cn
 
For Each Feuille In Cat.tables
'MsgBox Feuille.Name
Resultat = Application.WorksheetFunction.Substitute(Feuille.Name, '$', '')
MsgBox Application.WorksheetFunction.Substitute(Resultat, ''', '')
Next
 
Set Cn = Nothing
Set Cat = Nothing
End Sub


bonne soiree
MichelXld

Message édité par: MichelXld, à: 08/07/2005 20:00
 
Dernière édition:

IFFIC

XLDnaute Occasionnel
C'est O.K. Michel

Je ne bidouille pas VBA toujours sur le même dique.
Aussi, je viens de m'apercevoir que sur celui-ci
la reference Microsoft ActiveX Data Objects x.x Library.
n'était pas cochée.
ADO Ext 2.7 for..... l'était!!!

C'est pas malin!!!

Merci michel.
Grace à toi tout fonctionne.
Et en plus j'ai trouvé la raison d'autres plantages.

Bonne fin de journée

IFFIC
 

elokapo

XLDnaute Junior
Re : Re:\"ADO\" Récup Nom des Feuilles du Fichier Fermé.

MichelXld à dit:
bonjour Iffic

tu peux tester cette macro pour lister le nom des feuilles d'un classeur fermé


Code:
Sub listeFeuillesClasseurFerme()
'necessite d'activer la reference Microsoft ActiveX Data Objects x.x Library
'necessite d 'activer la reference Microsoft ADO Ext 2.7 for DLL ans Security
Dim Cat As ADOX.Catalog
Dim Fichier As String, xConnect As String, Resultat As String
Dim Cn As ADODB.Connection
Dim Feuille As ADOX.Table

Fichier = 'C:\\Documents and Settings\\michel\\dossier\\general\\excel\\Classeur1.xls'

xConnect = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' & Fichier & ';' & _
'Extended Properties=Excel 8.0;' 'preparation connection

Set Cat = CreateObject('ADOX.Catalog')
Set Cn = CreateObject('ADODB.Connection')

Cn.Open xConnect
Set Cat.ActiveConnection = Cn

For Each Feuille In Cat.tables
'MsgBox Feuille.Name
Resultat = Application.WorksheetFunction.Substitute(Feuille.Name, '$', '')
MsgBox Application.WorksheetFunction.Substitute(Resultat, ''', '')
Next

Set Cn = Nothing
Set Cat = Nothing
End Sub


bonne soiree
MichelXld

Message édité par: MichelXld, à: 08/07/2005 20:00



Bonjour Michel !

Un grand honneur de pouvoir te poser ma question :

Sur ce post là, je demandais s'il étais possible de faire une recherche sur plusieurs fichiers fermés et d'imprimer la feuille préchoisie qui ne se trouve que dans un seul fichier sur 4 par exemple. La macro ci dessus me liste les noms des onglets : c'est déjà un très bon début. Mais je voudrai qu'elle effectue une recherche sur 4 fichiers situés dans un même répertoire, et que la feuille préchoisie via une inputbox, s'imprime...

Merci de ta grande aide par avance !
Elokapo
 

Discussions similaires