Crear carpetas con macro basado en una tabla (Objeto Tabla)

Tengo una Tabla la cual he llamado Escenarios, esta cuenta con 4 columnas (Escenario, Casos de Prueba, Complejidad, No. Redmine), necesito crear una carpeta con el nombre del escenario y que esta contenga (subcarpetas) los Nombres de casos de prueba

Ejemplo:

Deberían quedar así las carpetas

C:\Users\Juan \Documents \Proyecto \Validaciones para Renovación de Matricula de PN \Habilite los campos para relacionar empleados para PN entre 18 y 35 años

años etc...

Esta pregunta se había hecho entes en Crear carpetas con macro basado en un listado, donde Elsa Matilde nos dio una respuesta excelente, a esta respuesta se pidió la información de como hacer el mismo proyecto pero desde un Objeto tabla, por sugerencia de Elsa Matilde Se crea una nueva pregunta para ayuda de nuevos usuarios

Respuesta
1

Guiándome por la respuesta dada por Elsa Matilde a una pregunta anterior Crear carpetas con macro basado en un listado y consultas hechas en google logre crear el siguiente código

Sub creaDirectorios_Tabla()
'Codigo Original x Elsamatilde
'Ajustes por Juan Alejandro León
'Contar la cantidad de Filas
X = Range("Escenarios").Rows.Count
'contempla posible error de nbre inválido o carpeta ya creada
On Error Resume Next
'se recorre la tabla de datos desde la primer fila de la columna Escenario
For i = 1 To X
    If Range("Escenarios[Escenario]").Rows(i) <> "" Then
        'se crea la carpeta
        Ruta = "C:\Users\Juan\Documents\Proyecto\"
        Escenario = Range("Escenarios[Escenario]").Rows(Fila)
        midire = Ruta & Escenario
        MkDir midire
    End If
    'se crean las subcarpetas
    MkDir midire & "\" & Range("Escenarios[Casos de Prueba]").Rows(Fila)
Next i
MsgBox "Fin del proceso"
End Sub

1 respuesta más de otro experto

Respuesta
1

Es correcta tu macro. Pero como casi siempre se puede llegar al mismo destino por varios caminos dejo otro modelo de bucle por si alguien prefiere verlo más como tabla.

Sub creaDirectorios()
'x Elsamatilde
'contempla posible error de nbre inválido o carpeta ya creada
On Error Resume Next
'recorrer la col Escenario de la tabla
For Each cd In Range("Escenarios[[Escenario]]")
    'si la celda no está vacía se crea la carpeta
    If cd <> "" Then
        Ruta = "C:\Users\Juan\Documents\Proyecto\"
        celda = cd.Value
        midire = Ruta & celda
        MkDir midire
    End If
    'se crean las subcarpetas
    MkDir midire & "\" & cd.Offset(0, 1)    'col siguiente
Next cd
MsgBox "Fin del proceso"
End Sub

* Mi recomendación del mes: el último manual de Bucles.

Sdos.

Elsa

Añade tu respuesta

Haz clic para o
El autor de la pregunta ya no la sigue por lo que es posible que no reciba tu respuesta.

Más respuestas relacionadas