Erreur 40036

Bonjour à vous tous, beaux informaticiens,

Je coince sur un problème dans une macro destinée à regrouper la première feuille de plusieurs classeurs Excel en un seul classeur. Cette macro fonctionne sans problème depuis longtemps, mais j'ai changé de pc le mois dernier et suis maintenant sous Win10. Depuis lors, je reçois un message d'erreur "Erreur d'exécution '40036' : Erreur définie par l'application ou par l'objet.

Je ne sais absolument pas ce qui pose problème, le débogeur s'arrête sur la ligne surlignée de la macro ci-dessous :

Sub GetSheets()

Path = "R:\Personnel\Fiches de prestation\"

Filename = Dir(Path & "*.xls*")

Do While Filename <> ""

Workbooks.Open Filename:=Path & Filename, ReadOnly:=True

For Each Sheet In ActiveWorkbook.Sheets

Sheet.Copy After:=ThisWorkbook.Sheets(1)

Next Sheet

Workbooks(Filename).Close SaveChanges:=False

Filename = Dir()

Loop

End Sub

Merci à vous de bien vouloir prendre un peu de temps pour me diriger vers la solution !

Daniel

Bonjour Daniel,

Je te propose le code suivant en remplacement :

Sub GetSheets()
    Dim Path As String, Filename As String
    Dim oWB As Workbook
    Dim oSheet As Worksheet

    'Path = "R:\Personnel\Fiches de prestation\"
    'Filename = Dir(Path & "*.xls*")
    Path = "C:\Users\215902\Documents\GVS\EXCEL_PRATIQUE\CECE69720\"
    Filename = Dir(Path & "*.xls*")
    Do While Filename <> ""
        Set oWB = Workbooks.Open(Filename:=Path & Filename, ReadOnly:=True)
        For Each oSheet In oWB.Worksheets
            oSheet.Copy After:=ThisWorkbook.Sheets(1)
        Next
        oWB.Close SaveChanges:=False
        Filename = Dir()
    Loop

    Set oWB = Nothing
    Set oSheet = Nothing
End Sub
Rechercher des sujets similaires à "erreur 40036"