Bonjour,

Dans le cadre d'un projet sous Excel, je dois construire une base de données regroupant les informations d'un certain nombres de fichier excel (1000). Une ligne par fichier Excel (soit 1000 lignes).
Je récupére les noms et chemins des fichiers et ensuite je désire vérifier l'existance d'un onglet "Form" dans chaques fichiers.

J'ai trouvé sur internet un code me permettant de vérifier l'existance d'un onglet dans un classeur excel sans l'ouvrir :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Function OkSheetName(FullPathFile$, SheetName$) As Boolean
    Dim Con As Object, Cat As Object, Tbl As Object
    Set Con = CreateObject("ADODB.Connection")
    Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" _
    & FullPathFile & ";" & "Extended Properties=Excel 8.0;"
    Set Cat = CreateObject("ADOX.Catalog")
    Set Cat.ActiveConnection = Con
    For Each Tbl In Cat.Tables
        If Left$(Tbl.Name, Len(Tbl.Name) - 1) = SheetName Then
        OkSheetName = True
    Exit For
        End If
    Next Tbl
    Set Cat = Nothing: Con.Close: Set Con = Nothing
 End Function
Le probléme est que les 2 arguments FullPathFile$ et SheetName$ sont ici des constantes. Pour mon exercice j'ai besoin que FullPathFile$ soit une variable.

Avez vous des idées/solutions à me proposer?

J'ai lu quelques articles et tutorial sur ces notions de Constante, variable mais rien me permettant de résoudre mon probléme...

N'hesitez pas à me demandez des informations complémentaires.

Cordialement