Microsoft 365 faire une copie d'un fichier stocké dans un sous sous... sous répertoire

  • Initiateur de la discussion Initiateur de la discussion yaka
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

yaka

XLDnaute Occasionnel
Bonjour

Je n'ai pas trouvé de discussions à ce sujet mais peut être ai-je mal effectué ma recherche... dans ce cas, désolé et merci de m'indiquer un lien exploitable.

Mon problème
J'ai un fichier qui contient un programme qui permet de lister les fichiers contenus dans un répertoire et ses sous répertoires.
résultat = un onglet dédié qui m'affiche la liste des fichiers trouvés >> j'ai en colonne A le nom du fichier et en colonne B son adresse... pour tous les fichiers
...
puis traitement sur l'onglet = ajout de colonnes "info 1, info 2, info 3" et de valeurs dans ces colonnes pour certaines lignes. résultats

1758563202417.png

...
..
puis j'utilise une 2ème macro pour faire une copie des fichiers choisis (=ceux qui ont des valeurs dans les nouvelles colonnes "info1, info2,...") vers un répertoire dédié.
J'utilise alors FileCopy FichierOriginal, FichierDeplace
où FichierOriginal = valeur de la colonne "Répertoire (source)" & '\" & valeur de la colonne "Nom du fichier" et FichierDeplace = "mon adresse de destination\" & valeur de la colonne "Nom de fichier"

Problème : quand la longueur de la chaîne de caractères FichierOriginal dépasse 241 caractères la copie ne s'effectue pas

Quelle est la solution pour corriger ou contourner cela?

Par avance merci pour vos retours.
 
Ton pb doit venir d'ailleurs car je viens de copier un fichier d'un dossier et le coller dans ce même dossier avec un autre nom, et ça fonctionne avec 250 caractères pour la source et 258 caractères pour la destination.

VB:
Sub Test()
'
Dim FichierSource As String, FichierCible As String

    FichierSource = "Z:\Mon_PC_perso\Projet extension de ma maison\16 - 18-09-2025 - Modificatifs documents pour permis de construire\Dossier supplémentaire permettant de vérifier si la longueur du chemin pose un problème ou pas" & "\" & "Récépissé dépôt pièces complémentaires.pdf"
    FichierCible = "Z:\Mon_PC_perso\Projet extension de ma maison\16 - 18-09-2025 - Modificatifs documents pour permis de construire\Dossier supplémentaire permettant de vérifier si la longueur du chemin pose un problème ou pas" & "\" & "Récépissé dépôt pièces complémentaires - copie.pdf"

    Set fso = CreateObject("Scripting.FileSystemObject")
    With fso
        .CopyFile FichierSource, FichierCible
    End With

End Sub
Bonjour
Je viens d'effectuer un nouveau test avec ton code (ci dessus )... sur mon lecteur C: = ça fonctionne... j'ai donc repris mes programmes... et ça fonctionne (enfin!)... je pense que mon erreur était dans la déclaration du fso... que j'utilise par ailleurs dans d'autres programmes...

Merci pour votre aide. 👍
 
bonjour,
on ne sait jamais si ça intéresse quelqu'un !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour