Contenido
CurDir es una función en Visual Basic for Applications (VBA) que devuelve una cadena que representa el directorio actual o el directorio activo de una unidad especificada.
Aquí te dejo un ejemplo básico de cómo se puede usar la función CurDir para obtener la ruta del directorio actual:
Sub EjemploCurDir()
' Obtener la ruta del directorio actual
Dim rutaActual As String
rutaActual = CurDir()
' Mostrar la ruta en un cuadro de mensaje
MsgBox "El directorio actual es: " & rutaActual
End Sub
Si deseas especificar una unidad diferente a la predeterminada (generalmente la unidad donde está el documento en ejecución), puedes pasar la letra de la unidad como argumento a la función CurDir. Por ejemplo:
Sub EjemploCurDirConUnidad()
' Obtener la ruta del directorio actual de la unidad D:
Dim rutaUnidadD As String
rutaUnidadD = CurDir("D")
' Mostrar la ruta en un cuadro de mensaje
MsgBox "El directorio actual de la unidad D: es " & rutaUnidadD
End Sub
Ten en cuenta que si la unidad especificada no existe o no está lista para ser leída (por ejemplo, si no hay disco en la unidad de CD o DVD), la función CurDir generará un error. Para manejar estos casos, puede ser útil usar un manejo de errores básico como el siguiente:
Sub EjemploCurDirConManejoDeErrores()
On Error Resume Next ' Ignora el error y continua con la siguiente línea
' Intentar obtener la ruta del directorio actual de la unidad Z:
Dim rutaUnidadZ As String
rutaUnidadZ = CurDir("Z")
' revisar si hubo un error y actuar en consecuencia
If Err.Number <> 0 Then
MsgBox "Error al obtener el directorio de la unidad Z: " & Err.Description
' Restablecer objeto Err
Err.Clear
Else
MsgBox "El directorio actual de la unidad Z: es " & rutaUnidadZ
End If
On Error GoTo 0 ' Restablecer el manejo de errores predeterminado
End Sub
Cuando se usa CurDir, es importante entender que esta función no cambia el directorio de trabajo; simplemente lo devuelve. Para cambiar el directorio de trabajo en VBA, usarías la función ChDir.