Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Supprimer tous les contenus d'un répertoire créé sous VBA

Legendre

XLDnaute Nouveau
Bonjour,
Je souhaite supprimer un répertoire et son contenu (plusieurs dossiers avec diverses extensions).
Ce répertoire a été initialement créé en renseignant "oui" dans le ComboBox31 et doit être supprimé en remplaçant "oui" par "non";
Cependant, ce code fonctionne partiellement quand il n'y a pas de contenus dans le répertoire.
Quelle instruction dois-je rajouter en plus du "RmDir"pour que ce code fonctionne en présence de contenus (*) dans le répertoire à supprimer ?
(*) .txt; .docx;.mp4; .xlsx, .dpm......
Merci,
Mon code est le suivant :
--------------------------------------------------------------------------------------------
'Créer automatiquement le répertoire Numéro du Mode Si le champ est égal à "OUI"
Dim NomFic As String
Dim Rep As String
Dim Nom As String
If ComboBox31.Value = "OUI" Then
Application.DisplayAlerts = Falaise
Rep = Workbooks(ActiveWorkbook.Name).Path & "\Enreg\"
NomFic = ComboBox1.Value
Nom = Rep & NomFic
On Error Resume Next
MkDir Nom
Else
'Supprimer automatiquement le répertoire Numéro du Mode Si le champ est égal à "NON"
If ComboBox31.Value = "NON" Then
Rep = Workbooks(ActiveWorkbook.Name).Path & "\Enreg\"
NomFic = ComboBox1.Value
Nom = Rep & NomFic
On Error Resume Next
RmDir Nom
End If
End If
ApplicationScreenUpdating = True
------------------------------------------------------------------------------------------------------------
Merci

Jacques
 

Staple1600

XLDnaute Barbatruc
Re

la version oneliner
VB:
Sub Oneliner(vPath As String)
CreateObject("Scripting.FileSystemObject").DeleteFolder vPath
End Sub
Sub test()
CreateObject("Scripting.FileSystemObject").DeleteFolder "F:\toto\titi"
End Sub
A tester avec prudence
Je décline toute responsabilité en cas de perte de données.

NB: ne fonctionne pas sur Mac, tout comme le code de patrick
 

patricktoulon

XLDnaute Barbatruc
re
oui c'est a tester la derligne ,car delete l'object argumenté en string j'en suis moins sur

en one line j'aurais codé comme suis

VB:
Sub DeleteFolder()
      CreateObject("Scripting.FileSystemObject").GetFolder("C:\Users\polux\DeskTop\Nouveau dossier").Delete
End Sub
 

soan

XLDnaute Barbatruc
Inactif
??? j'ai pas compris ! tu souffles fort comme pour éteindre les bougies
d'un gâteau d'anniversaire ? comme le loup qui essaye de faire
s'envoler la maison des 3 p'tits cochons ? comme une baleine
dont on voit le jet qui s'élève au-dessus de l'eau ? autre ?


soan
 

Discussions similaires

Réponses
8
Affichages
678
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…