Erreur 1004

Résolu/Fermé
debutant.excel - Modifié par jordane45 le 31/03/2015 à 02:16
 debutant.excel - 2 avril 2015 à 01:33
Bonjour,

J'ai une macro qui consiste à ouvrir un fichier qui se nomme "tuf" + une date (donc le nom du fichier change tous les jours).
Lorsque j'exécute cette macro, un message d'erreur s'affiche (erreur d'exécution '1004', 'tuf 30 mars.xls'introuvable.
Le fichier existe pourtant bien et se trouve dans le bon dossier.

Je joint la partie de la macro concernée
macro = ActiveWorkbook.Name

Chemin = "K:\dossier\SENSIBLE\alerte\"
tuf = Dir(Chemin & "tuf*")
Workbooks.Open Filename:=tuf

Auriez vous une petite idée du problème?
Merci

EDIT : Ajout des balises de code

3 réponses

jordane45 Messages postés 38164 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 7 mai 2024 4 658
31 mars 2015 à 02:22
Bonjour,

Première chose à faire lorsqu'on rencontre des soucis.. regarder ce que valent les variables
donc
macro = ActiveWorkbook.Name

Chemin = "K:\dossier\SENSIBLE\alerte\"
tuf = Dir(Chemin & "tuf*")

'//affichage de la variable TUF pour vérifier
debug.print (tuf)
' ou 
msgbox tuf


Workbooks.Open Filename:=tuf


Deuxième point à vérifier :
Le classeur que tu essayes d'ouvrir n'est il pas déjà utiliser ailleurs ?
As tu les droits en écriture sur le répertoire où se trouve le fichier ?
As-tu essayé de placer ce classeur dans un autre emplacement de ton disque dur et d'y accéder avec cette macro (en modifiant le chemin en conséquence bien entendu) ?




0
debutant.excel
31 mars 2015 à 22:07
Bonjour Jordane45,

Tout d'abord merci pour ta réponse et pour tes conseil.
Ensuite pour répondre à tes différentes questions:
J'ai essayer d'afficher la variable "TUF" mais ça n'a pas fonctionné. Toujours le même message d'erreur.
Concernant le fichier à ouvrir, il n'est pas utilisé ailleurs et j'ai bien les droits en écriture sur le répertoire où il se trouve. J'ai changé l'emplacement de ce classeur comme tu me l'as conseillé mais toujours pareil.
Par contre J'ai essayer d'écrire directement la ligne ci dessous et ça fonctionne
Workbooks.Open Filename:="K:\TRANSIT\SENSIBLE\SYLVAIN\tuf 12".
Ce qui me gène, c'est que j'ai plusieurs fichiers à ouvrir (tuf xxxx, vne xxxx, nte xxxx etc...) et je voudrais éviter de réécrire cette ligne à chaque fois.

Merci
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
Modifié par f894009 le 1/04/2015 à 08:13
Bonjour a vous deux,

Votre probleme vient de la variable tuf que vous ecrivez en tant que texte dans la ligne de code du
tuf = Dir(Chemin & <gras>"tuf*"</gras>)

ceci devrait aller: sauf si plusieurs fichiers nommes tufxxxxx.xls
Sub test()
    Chemin = "K:\dossier\SENSIBLE\alerte\"
    tuf = Dir(Chemin & tuf & "*.xls")
    'un fichier trouve ?
    If tuf <> "" Then
        Workbooks.Open Filename:=tuf
    Else
        MsgBox "pas de fichier trouvé!!!!!!!"
    End If
End Sub
0
debutant.excel
2 avril 2015 à 01:33
Bonjour f894009,

Je te remercie pour ta réponse. J'ai résolu ce problème.
0