RE:como elimina carpetas con subdirectorios y arch
Ya estoy en mi PC, y he comprobado que te lo dije mal.
Prueba esto en un proyecto nuevo y sin guardar. Verás que la función FileExists devuelve TRUE si es un archivo y FALSE si es un directorio, y además verás otra forma más elegante:
Sub Main()
Dim Archivo As String
Dim A As Object
Dim ADir As Object
Dim AArch As Object
Dim APrueba As Object
Set A = CreateObject("Scripting.FileSystemObject")
Archivo = App.Path 'Aqui ponemos la ruta de un directorio
'y dirá que NO existe
If A.FileExists(Archivo) Then
MsgBox Archivo & " existe"
Else
MsgBox Archivo & " no existe"
End If
Archivo = App.Path & "\Vb6.exe" 'Ahora la ruta de un archivo
'y dirá que SI existe
If A.FileExists(Archivo) Then
MsgBox Archivo & " existe"
Else
MsgBox Archivo & " no existe"
End If
'Es un sistema un poco burdo, pero verás ahora:
Archivo = App.Path & "\Template"
Set ADir = A.GetFolder(Archivo)
Set AArch = ADir.SubFolders
For Each APrueba In AArch
MsgBox APrueba.Name & " es un subdirectorio"
Next
Archivo = App.Path & "\Template\Classes"
Set ADir = A.GetFolder(Archivo)
Set AArch = ADir.Files
For Each APrueba In AArch
MsgBox APrueba.Name & " es un archivo"
Next
End Sub
Como ves hay un montón de métodos que no son fáciles de encontrar en la documentacion
Suerte
Josetxu.