Excel: Comprueba la existencia de carpetas

Si tenés que crear un archivo con muchas carpetas donde se tiene que distribuir la información, presta atención a este truco que te ayudará a sortear problemas.
MIE, 31 / JUL / 2013

Cuando hay que armar un sistema que distribuye ciertos archivos en sus respectivas carpetas puede surgir el inconveniente de que lo primero que hace el sistema es crear la correspondiente carpeta. Pero, si la carpeta ya existe y el sistema trata de crearla, salta un mensaje de error. Es necesario comprobar la existencia de la carpeta antes de crearla.

Para comprobar la existencia de una carpeta puede usarse la función Dir. Por ejemplo:

Sub ExisteCarpeta()
ruta = “Enero”
x = Dir(ruta, vbDirectory)
If x = “” Then
   MsgBox(“La carpeta “ & ruta & “ no existe”)
Else
   MsgBox(“La carpeta “ & ruta & “ existe”)
End If
End Sub

La función Dir admite distintos usos. Con el segundo argumento igual a vbDirectory controla la existencia de la carpeta indicada como primer argumento. Si existe, la función recibe el nombre de esa carpeta. Si no, queda vacía. La macro anterior informa si la carpeta existe o no según el valor devuelto por la función.

Para crear la carpeta sólo cuando ésta no existe se deberían incluir en la macro la siguiente instrucción:

If Dir(ruta, vbDirectory) = “” Then  MkDir(ruta)

Esta macro usa la función Dir para comprobar si las carpetas cuyos nombres aparecen en la columna [A] existen o no. Si no existen, las crea.

Esta macro usa la función Dir para comprobar si las carpetas cuyos nombres aparecen en la columna [A] existen o no. Si no existen, las crea.

En esta instrucción, si la carpeta ruta no existe, la función Dir devuelve un valor vacío y, por lo tanto, crea la carpeta. En caso contrario, la macro no hace nada especial y continúa con la ejecución.

¡Comparte esta noticia!

Últimos lanzamientos Ver más