Bonjour,
Avec ADO tu peux compter le nombre de feuilles (considérées comme des tables) dans un classeur fermé. Exécute la proc Test en ayant adapté le chemin du classeur :
Sub Test()
MsgBox NBFeuilles("D:\Mon dossier\Mon Classeur.xls")
End Sub
Function NBFeuilles(Fichier As String) As Integer
Dim Con As Object
Dim Cat As Object
Dim Feuille As Object
'crée les objets de connection au classeur
Set Con = CreateObject("ADODB.Connection")
Set Cat = CreateObject("ADOX.Catalog")
Set Feuille = CreateObject("ADOX.Table")
Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _
& Fichier & _
";Extended Properties=Excel 8.0;"
Set Cat.ActiveConnection = Con
'retourne le nombre de feuilles
NBFeuilles = Cat.Tables.Count
'mets fin à la connection
Con.Close
Set Con = Nothing
Set Cat = Nothing
Set Feuille = Nothing
End Function
Hervé.