Lo que necesito es rellenar un Arbol con las carpetas y archivos existentes en ellas. Me explico.
Dentro de una carpeta principal "Documentos" hay diferentes carpetas como por ejemplo "Reuniones", "Visitas Medicas", etc (No son siempre las mismas carpetas) y dentro de cada una de estas carpetas hay X archivos con una fecha por nombre(la fecha en la que se creó dicho archivo). Entonces necesito que se me generen los nodos padre con el nombre de las carpetas y dentro de dichos nodos se listen los archivos que hay dentro de dicha carpeta. hasta ahora lo he hecho así:
Código:
Dim archivo As String Dim nodoX As node Dim contador As String DirDocumentos = V_DAtendidos + "\" + CStr(Me.T_NHistoria) + "\Documentos" archivo = Dir(DirDocumentos + "\", vbDirectory) contador = "1" Do While archivo <> "" If archivo <> "." And archivo <> ".." Then If (GetAttr(DirDocumentos + "\" & archivo) And vbDirectory) = _ vbDirectory Then Set nodeX = ArbolPlantillas.Nodes.Add(, tvwChild, "A" + contador, archivo) RellenarSubNodos archivo, contador contador = CInt(contador) + 1 End If End If archivo = Dir Loop
Código:
Si quito la llamada a la funcion "RellenarSubNodos" que es donde me metería los archivos en el nodo correpondiente funciona bien. Se me muestran las carpetas como nodos. Pero con la funcion me da un error en la linea "archivo=Dir" de la funcion principal. El fallo dice "Llamada a procedimiento o argumento no validos"Dim archivoS As String Dim nodoS As node Dim contadorS As String DirDocumentos = V_DAtendidos + "\" + CStr(Me.T_NHistoria) + "\Documentos" archivoS = Dir(DirDocumentos + "\" + archivo + "\", vbArchive) contadorS = "1" Do While archivoS <> "" If archivoS <> "." And archivoS <> ".." Then If (GetAttr(DirDocumentos + "\" & archivo + "\" & archivoS) And vbArchive) = _ vbArchive Then Set nodeX = ArbolPlantillas.Nodes.Add("A" + contador, tvwChild, "B" + contadorS, archivoS) contadorS = CInt(contadorS) + 1 End If End If archivoS = Dir Loop
Conozco muy poco de este control (treeview) y de la funcion Dir, voy aprendiendo segun los uso asi que tal vez haya una manera más sencilla de realizar lo que quiero.
Un saludo y gracias