XL 2013 Problème avec une macro

Aloha

XLDnaute Accro
Bonsoir,

J‘ai un problème bien mystérieux.

J’ai une macro chargée d’ouvrir tous les fichiers “*.xls” se trouvant dans le dossier appelé TobeCopied qui se trouve sur le même chemin que le fichier avec la macro (Base).

Ce matin la macro a renvoyé un message d’erreur prétendant qu’il n’y avait pas un tel fichier dans le dossier, alors qu’il y en avait deux.

En analysant les noms des fichiers j’ai constaté que l’extension “.xls” n’était pas affichée. Je l‘ai ajoutée au nom de l‘un des deux fichiers, mais pas à l‘autre, et j‘ai relancé la macro qui a alors ouvert les deux fichiers.

J‘ai essayé encore sans l‘extension: aucun fichier trouvé, idem lorsque j‘ai rajouté l‘extension.

J‘ai redémarré Excel, puis l‘ordinateur, sans changement.

J‘ai alors ouvert le fichier contenant la macro (il se trouve sur un serveur et est nommé „Base“) sur un autre ordinateur: les fichiers sans l‘extension ont été ouverts sans problème.

Lors des essais échoués, j’ai exécuté la macro pas à pas avec F8, le chemin était le bon, mais Fname (les noms des fichiers à ouvrir) a affiché vide.

J‘en conclue que cela ne doit pas tenir ni au fichier avec la macro ni même à Excel.

Où pourrait résider le problème?

La partie concernée de la macro:
VB:
Set wbZiel = Workbooks("Base.xls")
Pfad = ActiveWorkbook.Path
SuchPfad = Pfad & "\TobeCopied"
ChDir SuchPfad

'---upfront check----
msg = "You are about to copy all data " & Chr(13) & _
        "from the folder" & Chr(13) & "<TobeCopied>" & _
        Chr(13) & "to the database list."
If MsgBox(msg, vbOKCancel) = vbCancel Then Exit Sub

'---check if there are files to be copied----
FNames = Dir("*.xls")
If Len(FNames) = 0 Then
    MsgBox "No files in the Directory"
    ChDir Pfad
    Exit Sub
End If

Bonne soirée
Aloha
 

Dranreb

XLDnaute Barbatruc
Avez vous surtout ajouté le plus important, à savoir un ChDrive SuchPfad et plus du ChDir SuchPfad, si toutefois c'est bien toujours un chemin classique et non de réseau, auquel cas il faut plutôt utiliser l'API SetCurrentDirectory ?
 

Aloha

XLDnaute Accro
Avez vous surtout ajouté le plus important, à savoir un ChDrive SuchPfad et plus du ChDir SuchPfad, si toutefois c'est bien toujours un chemin classique et non de réseau, auquel cas il faut plutôt utiliser l'API SetCurrentDirectory ?
Je n'ai "fait faire" rien d'autre que ce MsgBox puisque ça fonctionnait à nouveau.
A la prochaine occurence du problème je testerai le reste.

Le fichier est bien sur un serveur! Il faut donc utiliser SetCurrentDirectory!

D'ailleurs, autrefois, il y a un certain nombre d'années, avant le serveur, depuis la création du système, le fichier était logé sur un ordinateur.
 

Discussions similaires

Réponses
1
Affichages
720

Statistiques des forums

Discussions
311 733
Messages
2 082 011
Membres
101 866
dernier inscrit
XFPRO