Bonjour Lighteux26,
Il faut comprendre ce que fait le code.
Les codes de base du contributeur que je n'ai pas touché, sauf le mise en commentaire de "On Error Resume Next" lol.
Ligne 1 du code : Cette partie récupère "C:\Users\jz52353491\OneDrive-Conduent\Gestion horaire\Gestion horaire-Data.accdb" au moyen de la variable "sDbData" déclaré en string.
Ligne 3 du code : Cette partie affecte la valeur de "sDbData" à la nouvelle variable "sDbBackup" en modifiant le nom du fichier à l'aide de la fonction "Replace" en remplaçant la partie ".accdb" par un underscore ainsi que la date et l'heure et le ".accdb".
Ligne 5 du code : C'est ici que l'action se passe, on compact la base qui est déclarée "sDbData" premier argument, avec comme résultat le nouveau nom que l'on a créé en ligne 3 deuxième argument.
Le code lors de la fermeture, ciode du contributeur que j'ai modifié un peu, lol.
Cette partie du code la modification que vous avez faite se trouve à passer en argument non pas le chemin d'accès et le nom du fichier à compacter mais un nouveau nom qui n'existe pas.
Ligne 20 : Vous ajouter "\Sauvegardes Data\2024" à la "C:\Users\jz52353491\OneDrive-Conduent\Gestion horaire\Gestion horaire-Data.accdb" ce qui cause l'erreur.
C'est pour cette raison que je vous proposais d'ajouter une nouvelle variable et c'est cette nouvelle variable qui indiquera le chemin ainsi que le nom de la base compactée et copiée. Ainsi vous conservez la même stratégie sauf que vous passez 2 arguments au lieu de 1.
BackUp Me.AdresseData, "C:\Users\jz52353491\OneDrive-Conduent\Gestion horaire\Sauvegardes Data\2024\LeNomQueVousVoulez.accdb"
Maintenant si vous voulez rendre la destination de la copie (deuxième partie de la fonction) dynamique vous n'avez qu'a récupérer le nom du fichier et le concaténer avec votre nouveau "folderPath" que vous créé à la ligne 7 ou 10 selon le cas.
Bonne journée
Partager