Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/01/2012, 05:32
Avatar de acid_burd
acid_burd
 
Fecha de Ingreso: enero-2010
Mensajes: 30
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Rellenar TreeView con subcarpetas y archivos

Ya esta funcionando perfectamente. Ahora solo me queda ajustarlo para que no muestre la extension y demas y quedará perfecto. Os paso el código modificado por si alguien tiene o tendrá el mismo problema.
Código:
Private Sub Form_Load()
    
    
    Dim Fso As FileSystemObject
    Dim El_Directorio As Folder
    
    
    
    DoEvents
    
    Set Fso = New FileSystemObject
    Set El_Directorio = Fso.GetFolder(DirDocumentos)
    Call RellenarNodosPlantillas(El_Directorio)
    
End Sub
Código:
Private Sub RellenarNodosPlantillas(ByVal El_Directorio As Folder)
        
    On Error GoTo errsub
        Dim contador As String
    
        'Variable del tipo Folder
        Dim SubDirectorio As Folder
        
        
        contador = "1"
        'Recorrer los subdirectorios
        For Each SubDirectorio In El_Directorio.SubFolders
            'Agregar el Path
            Set nodeX = ArbolPlantillas.Nodes.Add(, tvwChild, "A" + contador, SubDirectorio.Name)
            Call RellenarSubNodos(SubDirectorio, contador)
            'Sigue listando los directorios
            RellenarNodosPlantillas SubDirectorio
            contador = Str(CInt(contador) + 1)
        Next
        
    Exit Sub
    
    'Error
errsub:
    'Error de permiso denegado
    If Err.Number = 70 Then
        Resume Next
    ElseIf Err.Number = 91 Then
        Screen.MousePointer = vbDefault
        Exit Sub
    Else
        MsgBox Err.Description, vbCritical
        Exit Sub
        
    End If
End Sub
Código:
Private Sub RellenarSubNodos(ByVal SubDirectorio As String, contador As String)
    Dim nodeX As node
    Dim contadorS
    Dim El_Archivo As File
    Dim El_Directorio As Folder
    Dim Fso As FileSystemObject
    Dim DirDocumentos As String
    
    'Nuevo objeto felisystemobjetc
    Set Fso = New FileSystemObject
    
    'Obtiene el directorio
    DirDocumentos = V_DAtendidos + "\" + CStr(Me.T_NHistoria) + "\Documentos"
    Set El_Directorio = Fso.GetFolder(SubDirectorio)
    
    contadorS = "1"
    
    'Listar los ficheros de esta carpeta
    For Each El_Archivo In El_Directorio.Files
        Set nodeX = ArbolPlantillas.Nodes.Add("A" + contador, tvwChild, "B" + contadorS, El_Archivo.Name)
        contadorS = Str(CInt(contadorS) + 1)
    Next El_Archivo
    
    
End Sub
Espero que os sea util.