Suppression d'un dossier et de son contenu

Contenu du snippet

Public Sub RmDir(ByVal vsFolder As Variant)
Dim sName As Variant
Dim oKillElements As Collection
   On Local Error Resume Next
   If VarType(vsFolder) <> vbString Then
       Err.Raise 5
   Else
       If Right$(vsFolder, 1) = "\" Then
           vsFolder = Left$(vsFolder, Len(vsFolder) - 1)
       End If
       Set oKillElements = New Collection
       sName = Dir$(vsFolder & "\*.*", vbDirectory Or vbReadOnly Or vbHidden Or vbSystem)
       Do While Len(sName)
           If (sName <> "..") And (sName <> ".") Then
               oKillElements.Add vsFolder & "\" & sName
           End If
           sName = Dir$()
       Loop
       For Each sName In oKillElements
           If GetAttr(sName) And vbDirectory Then
               RmDir sName
           Else
               SetAttr sName, vbNormal
               Kill sName
           End If
       Next sName
       VBA.FileSystem.RmDir vsFolder
   End If
End Sub 

Compatibilité : VB6, VBA

Disponible dans d'autres langages :

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.