Ouvrir tous les fichiers d'un même répertoire, en evitant les fichiers corrompus

Alban.aktisea

XLDnaute Nouveau
Bonjour à tous j'ai besoin d'un ptit coup de pouce.

Je vous passe les détails de ma mésavanture, mais en gros je doit ouvrir tout les fichier xls (environ 500 000) lol, d'un répertoire, et si le fichier possède une feuille en particulier alors le fichier doit être sauvegardé dans un autre répertoire.

Jusque la tout va bien ça fonctionne,

Par contre quand un fichier corrompus .xls s'ouvre ma macro plante. Est ce que quelqu’un aurait une solution pour éviter que ma macro s’arrête si elle ouvre un fichier corrompu?

Merci d'avance, la solution me fera gagner beaucoup beaucoup de temps.
 

Fichiers joints

job75

XLDnaute Barbatruc
Bonsoir Alban.aktisea,

Ce code tient la route :
Code:
Sub OuvrirFichiers()
Dim Chemin As String, Fichier As String
 
Chemin = "C:\Users\Alban\Desktop\Nouveau dossier (2)\" '//////// DOSSIER OU CHERCHER
Fichier = Dir(Chemin & "*.xls")

Application.DisplayAlerts = False
On Error Resume Next

While Fichier <> ""
    If Fichier <> ThisWorkbook.Name Then
        Workbooks.Open Chemin & Fichier
        If ActiveWorkbook.Name = Fichier Then 'si le fichier a été ouvert
            If ActiveWorkbook.Sheets("Sélection") Is Nothing Then Else Call Sauvegarde
            ActiveWorkbook.Close
        End If
    End If
    Fichier = Dir
Wend

End Sub

Sub Sauvegarde()
ActiveWorkbook.Sheets("Durée").Visible = xlSheetVisible ' AFFICHE LA FEUILLE DUREE
ActiveWorkbook.SaveAs "C:\Users\Alban\Desktop\NEW\" & ActiveWorkbook.Name
End Sub
Edit : "save" est un mot réservé, j'utilise le nom "Sauvegarde".

500 000 fichiers ??? Vous plaisantez j'espère !!!

A+
 
Dernière édition:

Alban.aktisea

XLDnaute Nouveau
Merci milles fois (*500) lol, pour votre aide job75

Oui 500 000, c'est une récupération d'un disque dur effacé malencontreusement

MERCI ENCORE ;).
 

Discussions similaires


Haut Bas