Ecraser dossier déjà existant

Bonjour,

Mon problème du jour est le suivant : à l'aide d'une macro, je génère la création de dossiers, suivant le nom d'une cellule (en B34). Par la suite, cette même macro génère des fichiers PDF dans ce dossier nouvellement créé.

chemindossier = "F:\XXX\YYY\FicheTerr\" & Range("B34")  'Chemin du dossier à créer + nom
    MkDir chemindossier     

Là où ça coince, c'est lorsque je veux relancer la macro pour actualiser les fichiers PDF. En effet, une erreur d’exécution '75' se produit ("Erreur d'accès Chemin/Fichier"). Je comprends bien que c'est le fait qu'un dossier s'appelle déjà comme la cellule B34 qui pose problème.

Aussi, je souhaiterai savoir s'il existait un code magique qui puisse écraser un dossier pour pouvoir sauvegarder mes fichiers PDF actualisés dans un nouveau dossier portant le même nom que la cellule B34.

J'ai un gros doute sur la compréhension de ma dernière phrase...

bonjour

essaie ceci. attention, tous les fichiers du répertoire seront supprimés (bien vérifier le nom du répertoire, avant de lancer la macro !)

chemindossier = "F:\XXX\YYY\FicheTerr\" & Range("B34")  'Chemin du dossier à créer + nom
on error resume next
rmdir  chemindossier ' supprimer le répertoire s'il existe déjà
on error goto 0
MkDir chemindossier    

Bonjour

Je te remercies de ton aide ! Cependant j'ai encore un bug :

chemindossier = "F:\XXX\YYY\FicheTerr\" & Range("B34")  'Chemin du dossier à créer + nom
    On Error Resume Next
    RmDir chemindossier                                                     
    On Error GoTo 0
    MkDir chemindossier

L'erreur se produit sur la ligne MkDir chemindossier :

Erreur d'accès Chemin/Fichier

Bonjour,

il manquait une instruction. teste ceci.

Sub test()
 chemindossier = "F:\XXX\YYY\FicheTerr\" & Range("B34")  'Chemin du dossier à créer + nom 'Chemin du dossier à créer + nom
   On Error Resume Next
   Kill chemindossier & "*.*"
    RmDir chemindossier
    On Error GoTo 0
    MkDir chemindossier
End Sub

Re,

encore une erreur, à la dernière ligne. Mais uniquement quand le dossier existe déjà.

Merci de ton aide !

bonjour,

je ne parviens pas à reproduire l'erreur avec le code que je t'ai fourni.

N'aurais-tu pas un fichier ouvert dans le répertoire que tu essaies de supprimer ? dans ce cas la suppression n'est pas possible. et donc tu reçois une erreur à la création puisque le répertoire existe déjà.

dans ce cas tu pourrais utiliser ce code-ci

Sub test()
 chemindossier = "F:\XXX\YYY\FicheTerr\" & Range("B34")  'Chemin du dossier à créer + nom 'Chemin du dossier à créer + nom
  On Error Resume Next
   Kill chemindossier & "*.*"
    RmDir chemindossier
    MkDir chemindossier
On Error GoTo 0
End Sub

Re bonjour,

Je n'avais aucun fichier ouvert dans le répertoire que je souhaitais supprimer.

Malgré tout, ton dernier code fonctionne parfaitement !

Merci beaucoup de ce coup de main !!

Rechercher des sujets similaires à "ecraser dossier deja existant"