Erreur d'exécution 52 Mauvais nom de fichier ou de numéro de
Je suis d'essayer d'exécuter du code vba pour effectuer un certain nombre d'opérations sur un dossier de fichiers excel. Ce code a été écrit par quelqu'un d'autre non plus avec mon entreprise, mais le script VBA travaillé lors de la dernière course. Maintenant, lorsque je tente de l'exécuter, je reçois erreur d'exécution 52 ("Mauvais nom de fichier ou de numéro"). Des suggestions?
Le code est beaucoup plus longue, mais l'erreur (par le débogueur) met en évidence en tant que tel:
Print #intFreeFile, _
" *XXXXXXXXX * * * Error in code 'main_ProcessBringFwd' " & Err & ": " & _
Error(Err)
- Nous montrer le code.
- Le code est beaucoup plus longue, mais l'erreur (par le débogueur) met en évidence en tant que tel: Print #intFreeFile, " *XXXXXXXXX * * * Erreur dans le code 'main_ProcessBringFwd' " & Tre & ": "& Erreur(Err)
- Je pense que nous avons besoin de voir un peu plus de votre code... quelle est la valeur de
intFreeFile
à ce moment de l'erreur soulève? Le fichier est déjà ouvert par une autre application? Etc. - La macro est censé fonctionner sur environ 300 fichiers excel, aucun de qui sont ouverts ou utilisés à cette époque. Pas sûr au sujet de la valeur de intFreeFile - cela fait référence au numéro du fichier en cours de travaillé? Il semblerait qu'aucun dossier n'avait été consulté quand j'ai essayé d'exécuter la macro.
Vous devez vous connecter pour publier un commentaire.
Le problème est probablement celui-ci dit par le message d'erreur.
Ouvrir le code et regarder pour les commandes essayer de lire ou d'enregistrer des fichiers. Ils sont probablement à l'aide d'un chemin d'accès non valide.
Quelque part dans votre code, vous pourriez avoir quelque chose comme ceci:
Déboguer votre code et de vérifier si la valeur de "file_name" (il peut y avoir d'autres var nom) est un chemin d'accès valide et aussi un nom de fichier valide.
J'ai découvert que lorsque j'ai eu ce message d'erreur, c'est parce que j'ai essayé d'utiliser un
:
dans le nom du fichier. Dès que je l'ai enlevé, la macro a fonctionné à la perfection. Je pense qu'il y a peut être un conflit avec le code quand il s'agit de caractères spéciaux.Si le fichier est un fichier de réseau, alors le programme peut ne pas être en mesure de trouver le fichier si il existe un réseau temporaire de l'échec, j'ai rencontré ce problème à plusieurs reprises.
Le correctif à ce type d'erreur est de vérifier que le disque /dossier existe avant de l'ouverture du fichier.