En el mundo de los negocios, es crucial organizar archivos de una manera eficiente. Uno de los enfoques más útiles es la creación de un sistema de directorios que se ajuste automáticamente como por ejemplo fechas específicas, nombre del cliente o de la empresa. Esto es especialmente útil cuando se trabaja con archivos que deben organizarse, como registros, informes o facturas.
En esta entrada, veremos un ejemplo de automatizar la creación de directorios (comúnmente llamados carpetas) en función de la fecha utilizando Visual Basic (VB). Vamos a explorar cómo con solo unas líneas de código, podemos crear carpetas automáticas con Visual Basic organizadas por año y mes, facilitando la gestión de archivos de manera eficiente y ordenada. Además, aprenderás a manejar las funciones de fecha en VB y cómo estructurar tus directorios según las necesidades de tu proyecto
Si buscas una manera rápida y práctica de organizar tus archivos en función de la fecha, este tutorial es para ti. ¡Empecemos!
Crea una carpeta con Excel
Primero vamos con un ejemplo en el que vamos a crear una carpeta en una ruta específica que nos va a servir para introducir el tema en cuestión.
'
'Crear carpetas automáticas con Visual Basic
'
Sub ejemploCreacionCarpeta ()
'Declaramos las variables necesarias
Dim ruta as String
Dim nombreCarpeta as String
'Aquí añadimos la ruta donde queremos que se cree nuestra carpeta
ruta="C:\Users\[resto de la ruta]\"
'Aquí le damos el nombre a nuestra carpeta
nombreCarpeta="nombre de la carpeta"
'Creamos la lógica que crea las carpetas
If Dir(ruta & nombreCarpeta, vbDirectory) = "" then
'Si el directorio se encuentra vacío creamos la carpeta
MkDir ruta & nombreCarpeta
Else
'De lo contrario nos saltará un mensaje en pantalla
MsgBox "Ya existe una carpeta en esa ruta"
End If
End Sub
De esta forma podemos crear una carpeta con el nombre que queramos en el directorio que queramos.
Crear carpetas automáticas con Visual Basic
Hecha esta breve introducción, ahora vamos a ver el código que es capaz de crear carpetas automáticas con Visual Basic, en función en nuestro caso del año en el que estamos y del mes, algo que es increíblemente útil si queremos implementar en nuestro negocio un sistema de facturas completamente organizado por fechas de manera automática y a un solo click de ratón.
'
'Crear carpetas automáticas con Visual Basic
'
Sub ejemploCreacionCarpetas()
'Declaramos las variables necesarias
Dim ruta as String
Dim nombreCarpeta as String
Dim MyDate As Date
Dim MyMonth As String
Dim MyYear As String
'Establecemos la fecha de hoy
MyDate = Now
' Asegurarse de que el mes tenga dos dígitos
MyMonth = Format(Month(MyDate), "00")
MyYear = Year(MyDate)
' Definir la ruta base
filePath = "C:\Users\[resto de la ruta]\"
' Comprobamos si existe la carpeta con el año
If Dir(filePath & MyYear, vbDirectory) = "" Then
MkDir filePath & MyYear
End If
' Comprobamos si existe la carpeta con el mes dentro del año
If Dir(filePath & MyYear & "\" & MyMonth, vbDirectory) = "" Then
MkDir filePath & MyYear & "\" & MyMonth
End If
'Establecemos la nueva ruta donde se van a volcar los archivos
filePathNote = "C:\Users\[resto de la ruta]\" & "\" & MyYear & "\" & MyMonth & "\"
End Sub
Con este código seremos capaces de generar automáticamente un sistema de directorios, que en primera instancia comprueba si hay una carpeta con el número del año, en caso de que no exista la crea, seguidamente comprueba si dentro de la carpeta con el nombre del año, existe una carpeta con el número del mes y por último si esto no existe aún, la crea.
De esta manera y con unas cuantas líneas de código somos capaces de automatizar un sistema que por ejemplo puede organizarnos facturas en este caso por su fecha de expedición pero podemos también organizarlos en función del nombre del cliente o de la empresa para la que estemos ejerciendo un trabajo.
Ahora tan solo debemos de crear un objeto dentro de nuestro archivo Excel que cuando se haga click se ejecute el código anteriormente compartido.
Para ello en nuestra hoja de Excel, en la barra superior hacemos click en Insertar>Formas y escogemos la forma que queramos, en mi caso un rectángulo:

Una vez que tengamos esta figura en nuestra hoja, la seleccionamos con click derecho escogemos «Asignar Macro» y escogemos la macro que hemos creado previamente.

¡Y así de fácil es crear un sistema de directorios automáticos para organizar tus archivos! En DTV Urquiza somos expertos en desarrollar soluciones personalizadas para autónomos y PYMES. Descubre cómo podemos ayudarte a optimizar tus procesos visitando nuestra sección de servicios para empresas o contáctanos directamente para resolver cualquier duda o explorar oportunidades de colaboración.
Por último te recomiendo que nos sigas en nuestras redes sociales para no perderte ninguna novedad.