Esta función del VB se utiliza tanto en Excel como en Acces, y sirve para devolver una cadena que represente la ruta del directorio actual.
Sintaxis
CurDir (Drive)
Parámetros
Drive
Parámetro opcional. Es una expresión que expecifica una unidad existente. Si no se especifica ninguna unidad o si Drive es una cadena de longitud cero (""), CurDir devuelve la ruta de acceso de la unidad actual
Ejemplo 1
CurDir (D)
Devuelve la ruta de la ubicación del archivo en el disco D:
Ejemplo 2
A continuación se describe, paso a paso, cómo elaborar la función CurDir en el programador de Visual Basic
1) Colocar el encabezado:
Sub funcioncurdir()
2) Colocamos la variable RUTA, y le asignamos el valor del directorio actual:
RUTA = CurDir()
3) Asignamos el valor de la variable RUTA a la celda A40, ubicada en esta hoja:
Worksheets("Hoja1").Range("A46").Value = RUTA
4) Lanzamos un Msgbox con la palabra Listo!:
MsgBox "Listo!"
5) Por último, terminamos el código con End Sub
El código debe verse de la siguiente manera:
El resultado para el caso evaluado será:
Elaborado por: Alicia Chauca
12/07/2017 a las 8:19 am
Hola, cual es la direrencia entre "CurDir" y "ThisWorkbook.Path"?
A mi entender deberia dar el mismo resultado o no?
Cuando uso CurDir, lo que obtengo es la ruta donde esta guardado el programa excel, no el archivo como tal I:\Documents\Excel\
Este es el codigo:
Sub file_rute()
ruta = CurDir() & "\"
Worksheets("sheet1").Range("a1").Value = ruta
MsgBox "Listo Cur Dir!"
End Sub
-------------------------------
Si uso "ThisWorkbook.Path" si obtengo la ruta donde esta el archivo C:\Users\abraham\Desktop\Macros\
Este es el codigo:
Sub file_rute_WPath()
Worksheets("Sheet1").Range("a1").Value = ThisWorkbook.Path & "\"
MsgBox "Listo ThisWorkbook.Path!"
End Sub
Gracias y saludos
23/12/2019 a las 3:57 pm
Buen día. la diferencia es que al usar el CurDir estas ubicando donde se guarda actualmente, y con ThisWorkbook.Path ubicas donde se encuentra el archivo abierto. por ejemplo, yo utilizo ThisWorkbook.Path para saber la dirección de la carpeta y ChDir para gurdar archivos generados desde el primer libro.
Saludos.
20/04/2021 a las 8:32 am
Hice el ejemplo del codigo curdir() pero cuando la ejecuto siempre me muestra la misma ruta, abro un archivo que este ubicado en algun directorio diferente y cuando ejecuto la macro me sigue mostrando la ruta del directorio anterior.
Que estara sucediendo ?.