Remova o diretório e seu conteúdo (arquivos, subdiretórios) sem usar o FileSystemObject

Quero saber se é possível reescrever este pedaço de código:

Private Sub PrepareDir(ByVal dir As String)
    Dim fso As New FileSystemObject
    If fso.FolderExists(dir) Then Call fso.DeleteFolder(dir, True)
    Call fso.CreateFolder(dir)
End Sub

Com instruções VBA: Kill, MkDir, etc. A parte mais "difícil" disso - remova o diretório não vazio. Com o FOE, isso pode ser feito facilmente, mas como pode ser feito sem o FOE?

questionAnswers(2)

yourAnswerToTheQuestion