Carpeta en uso no me permite borrar

Quisiera saber si me pudieran ayudar, tengo un formulario en el cual trabajo con archivos jpg capturo la ruta de cierta carpeta en un textbox y al mismo tiempo cuento la cantidad de archivos que tengo en dicha carpeta (esto lo hago con CurDir), y también hago que me liste todos los nombre de los archivos de dicha carpeta en un listbox esto lo hago con Dir), todo esto me funciona perfectamente desde hay puedo copiar y pegar todo ok.

La situación es cuando termino de hacer todo lo que tenía que hacer con dicha carpeta y limpio todos mis controles, y voy a intentar borrar dicha carpeta no lo pudo hacer porque me dice que está en uso, y para lograr borrar la carpeta o direcciono otra carpeta o la cierro mi aplicación y recién la pudo borrar.

Como puedo hacer sin cerrar la aplicación o sin direccionar otra carpeta, con solo presionar el botón de limpiar los controle me permita borrar la carpeta y no me salga el mensaje que está en uso

1 respuesta

Respuesta
3

¿El mensaje te está diciendo que la carpeta está en uso... seguramente tenés también el libro en uso allí?

Si por 'borrar la carpeta' se entiende eliminarla (RmDir), ésta debe estar vacía. Por lo que primero tendrás que eliminar los archivos de allí con Kill. Y por supuesto que el libro con el UF no estará en esa carpeta.

Por ej:

Private Sub CommandButton2_Click() 'limpia controles
'Remarks
'An error occurs if you try to use RmDir on a directory containing files.
'Use the Kill function to delete all files before attempting to remove a directory.
'eliminar los archivos de la lista
    For i = 0 To ListBox1.ListCount - 1
        Kill ListBox1.List(i, 0)
    Next i
'eliminar la carpeta vacía
    RmDir TextBox2
'limpiar los controles del UF
    ListBox1.Clear
    TextBox2 = ""
End Sub

Si esta respuesta resuelve tu consulta no olvides valorarla. Sino aclara un poco el tema  y la seguimos tratando.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas