Bug sur Macro après téléchargement du fichier
Bonjour à vous,
J'ai récupéré un fichier contenant macro qui permet de consolider différents fichiers dans une synthèse globale. Celle-ci s'execute parfaitement si je laisse le fichier dans le dossier de téléchargement mais dès que je sauvegarde en local sur mon PC j'ai un message d'erreur d"execution '52' Nom ou numéro de fichier incorrect et lorsque je clique sur debogage voici ce qui est mis en surbrillance
Pouvez-vous m'expliquer ce qui crée ce bug car je dois pouvoir sauvegarder en local voir même envoyer ces fichiers à d'autres utilisateurs.
Merci par avance de votre aide.
Bonjour WinBea,
Quand je lis " je laisse le fichier dans le dossier de téléchargement mais dès que je sauvegarde en local sur mon PC"
je m'interroge, le dossier téléchargement est déjà en local...
Quand vous lancez votre macro ou se trouve le fichier qui la contient
Mettez un point d'arrêt [F9] sur la ligne : Fichier_traite...
Relancez votre code, qui s'arrêtera sur cette ligne, mettez alors votre curseur de souris sur la variable "Chemin"
et dite nous ce que vous voyez ?
A+
Bonjour,
Merci de votre réponse.
En fait effectivement le dossier Téléchargement est en local mais dès que je sauvegarde ailleurs que dans ce dossier, le bug apparaît.
J'ai fait la manip indiquée et je pense que le pb vient du fait qu'effectivement le chemin ="C:\Users\XXX\Downloads\" ce qui laisse supposer que si je modifie l'emplacement des fichiers il ne trouve pas le bon chemin.
Quelle modification doit etre faite pour corriger ce problème.
Et encore merci de votre aide.
Re,
Perso, j'utilise cette fonction pour permettre à l'utilisateur de choisir le fichier
Function ChoixFichier(DefaultPath As String, sTitre As String, Optional sFilter As String)
' Le filtre doit être du type : "Fichier Excel (*.xlsx), *.xlsx"
Dim fd As FileDialog, TabFilter() As String
' Initialiser les variables
If Right(DefaultPath, 1) <> "\" Then DefaultPath = DefaultPath & "\"
' Initialiser l'intance du dialogue
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.Filters.Clear
' Si un filtre a été donné
If sFilter <> "" Then
TabFilter = Split(sFilter, ",")
.Filters.Add TabFilter(0), Trim(TabFilter(1))
End If
.Title = sTitre
.InitialFileName = DefaultPath & TabFilter(0)
If .Show = -1 Then
ChoixFichier = fd.SelectedItems(1)
End If
End With
Set fd = Nothing
End FunctionDu coup pas besoin d'utiliser "Chemin", mais juste
Fichier_traite = ChoixFichier(ThisWorkbook.Path, "Choisir le fichier à traiter","Fichier (*.xlsx), *.xlsx")A+
Merci encore pour votre aide, cela fonctionne