[RÉSOLU]Gestion de contenu illisible sous VBA pour ouvrir un fichier (erreur 1004)

tashiqi

XLDnaute Occasionnel
Bonjour,

Je rencontre actuellement un petit problème dans un programme VBA. J'ai une macro supposée ouvrir des fichiers pour les modifier, mais je rencontre un problème avec certains fichiers. En effet, VBA n'arrive pas à les ouvrir, et m'affiche un message d'erreur. Avant, cette opération se faisait à la main, et le message :
"Excel a rencontré un contenu illisible dans le "xxxxx.xlsx". Voulez vous récuperer le contenu de ce classeur ? Si la source de ce classeur est fiable, cliquez sur oui."
apparaissait. il suffisait d'appuyer sur oui pour résoudre le problème, le fichier s'ouvrait et précisait le changement :
"Enregistrements réparés: Filtre automatique dans la partie /xl/worksheets/sheet3.xml"
Actuellement, j'ai ajouté un message d'erreur demandant à l'utilisateur de réenregistrer le fichier source, mais je me demandais si ce problème de contenu corrompu contre lequel je ne peux malheureusement pas lutter à la source pouvait être directement géré par VBA.

Merci d'avance :3
Tash
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Gestion de contenu illisible sous VBA pour ouvrir un fichier

Bonjour,

peut être avec ceci... sans garantie...
Code:
Application.DisplayAlerts = False
'ton code d'ouverture
Application.DisplayAlerts = True
bon après midi
@+
 

tashiqi

XLDnaute Occasionnel
Re : Gestion de contenu illisible sous VBA pour ouvrir un fichier

Bonjour,

peut être avec ceci... sans garantie...
Code:
Application.DisplayAlerts = False
'ton code d'ouverture
Application.DisplayAlerts = True
bon après midi
@+
ça ne foncionne pas :/

Chose importante que j'ai oublié de préciser, j'ai une erreur VBA en fait :
"Erreur d'exécution '1004':
La méthode 'Open' de l'objet 'Workbooks' a échoué"

Merci d'avance
 

tashiqi

XLDnaute Occasionnel
Re : Gestion de contenu illisible sous VBA pour ouvrir un fichier

Bonjour
C'est justement ce que je viens de voir xD
je met la solution claire ici, car j'ai trouvé beaucoup de fils non résolu sur google ...
Il suffit d'utiliser cette syntaxe :
Code:
Application.DisplayAlerts = False
        Workbooks.Open Filename:="chemin&nom_du_fichier", corruptload:=xlRepairFile
Application.DisplayAlerts = True

(merci ^^)
@+
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa