Macro para obtener la ruta donde se encuentra ubicado el libro

Para continuar con la aplicación de las Propiedades del Objeto Workbook, vamos a utilizar esta vez la Propiedad Path. Seguro en alguna ocasión se nos presenta la necesidad de identificar la ruta del libro de trabajo que estemos utilizando ya sea para un proceso de automatización o para generar un guardado en la misma carpeta a los nuevos libros; es aquí donde toma importancia esta Propiedad Path.

Activeworkbook.path.

Propiedad Path: Con la aplicación de esta propiedad, lo que podemos obtener es la ruta donde se encuentra guardado el libro de trabajo actual o por lo menos el que se encuentra Activo.

Desde Excel abrimos el Editor VBA (Alt + F11), insertamos un Módulo (Clic derecho sobre el proyecto Excel, Insertar, Módulo:

Macro para obtener ruta de un archivo.

Ingresamos el siguiente código:

Sub ObtenerRutadelLibro()

MsgBox ("La ruta del Libro es " & ActiveWorkbook.Path)

End Sub

Queda de la siguiente manera en el Módulo:

Veamos lo que significan cada una de las líneas:

  1. La primera línea Sub ObtenerRutadelLibro(), indica el inicio de la macro.
  2. En esta segunda línea se aplica la propiedad Path en un cuadro de mensaje al combinarlo con el Objeto ActiveWorkbook y tomar de éste su Ruta (Path)
  3. La última línea marca el fin (End) de la Macro o Subrutina (Sub).

Podemos ejecutar esta macro vinculándola a una autoforma dando clic derecho sobre ésta y seleccionamos la opción Asignar Macro:

Del listado de Macros que aparece seleccionamos ObtenerRutadelLibro; luego clic en Aceptar y ahora al dar clic en la autoforma nos aparece un mensaje informativo como el siguiente:

ruta-archivo-excel

Descargar archivo de ejemplo.

Macro para cambiar ubicación de guardado del libro.

Vamos a continuar con la aplicación del objeto Workbook utilizando sus Métodos y en esta ocasión veremos cómo se puede programar una macro para guardar el libro actual en otra ubicación a manera de copia activa indicando la ruta desde donde queremos seguir trabajando en dicha copia, es decir. Para lograr esto, vamos a utilizar el Método SaveAs

Método SaveAs: Con la aplicación de este método, lo que estamos indicando desde VBA es la opción de Guardar una copia del libro de Excel en la ruta donde se requiera y continuar trabajando desde esta nueva copia

Desde Excel abrimos el Editor VBA (Alt + F11), insertamos un Módulo (Clic derecho sobre el proyecto Excel, Insertar, Módulo:

Ingresamos el siguiente código:

Sub MetodoGuardarComo()

ThisWorkbook.SaveAs "C:\Copia de 2.2.3 Macro para Guardar copia.xlsm"

End Sub

Queda de la siguiente manera en el Módulo:

Veamos lo que significan cada una de las líneas:

  1. La primera línea Sub MetodoGuardarComo(), indica el inicio de la macro.
  2. En la segunda línea estamos utilizando del Objeto Workbooks el Método SaveAs el cual nos permite Guardar una copia del libro de Excel en la ruta que indicamos entre comillas.
  3. La última línea marca el fin (End) de la Macro o Subrutina (Sub).

Al ejecutar la macro, veremos cómo se guarda el libro y continuamos trabajando en la copia generada; probemos asignando la macro a una autoforma con clic derecho Asignar macro:

En la ventana de asignación de macros seleccionamos la macro MetodoGuardarComo, damos Aceptar y probemos dando clic en el botón para ver que efectivamente una copia en la ruta especificada.

Recomendados.

Compártalo en Facebook Compártalo en Twitter

Déjenos su opinión

4 Opiniones
  1. JOSE MIGUEL MACHADO Dice:

    lAS EXPLICACIONES DE LAS FUNCIONES , PROPIEDADES Y OBJETOS DE LAS MACROS EN EXCEL SON MUY IMPOLUTAS. UDS SON FEHACIENTES.
    ES FACIL INTRODUCIR LAS FUNCIONES PRESENTADAS POR UDs EN NUESTROS PROYECTOS.
    sOY PROLIFICO DE SU TRABAJO

    gRACIAS POR MANTENER ESE GRADO DE FORMACIÒN A NOSOTROS. QUE SOMOS PARTE DE SU EQUIPO

    Responder
  2. Hamilton Dice:

    Al utilizar la función “path” en una carpeta de oneDrive devuelve una ruta de sharepoint que no permite abrir, ¿Hay alguna solución?

    Responder
  3. Carlos Dice:

    Excelente. Gracias

    Responder
  4. Acevedo Dice:

    Excelente nota; pero y si yo quiero obtener la ruta de un archivo de acuerdo a su nombre, en excel, no la ruta del archivo activo excel, sino que al agregar un nombre “x” en una celda, excel me muestre en otra, la ruta asociada a ese nombre.

    gracias de antemano

    Responder
En Gerencie.com está permitido opinar, criticar, discutir, controvertir, disentir, etc., pero debe hacerlo con respeto, sin insultar y sin ofender a otros.

Información legal aplicable para Colombia.

Este sitio web utiliza cookies propias y de terceros para ofrecer un mejor servicio. Al seguir navegando acepta su uso.