Buenos días a los miembros de este prestigioso foro, en esta ocasión quisiera pedir su apoyo en como mejorar la macro, en cuanto a la dirección donde se ejecuta dicha macro, cuando presiono el botón de formulario Union Plla 601, por defecto me lleva a una carpeta diferente a la cual estoy trabajando ejemplo: C:\Este equipo\Documentos (POR DEFECTO), y lo que quisiera es cuando ejecuto la rutina del botón de formulario Union Plla 601, me muestre la ubicación de los datos de dicha carpeta que se trabajando, ejemplo: D:\AGENCIAS MARITIMAS\SHIPPING\AÑO 2017\10 ABRIL CS SATIRA (lo que esta resaltado negrita es carpeta es variable que podria esta en una E: F:, etc., adjunto archivo.
Desde ya agradezco su apoyo.
Adjunto | Tamaño |
---|---|
plantilla_electronica.xlsm | 511.55 KB |
En la hoja puedes obtener la dirección completa y el nombre del archivo con la siguiente función:
=SUSTITUIR(IZQUIERDA(CELDA("nombrearchivo");ENCONTRAR("]";CELDA("nombrearchivo"))-1);"[";"")
En realidad te valdría con:
=CELDA("nombrearchivo")
pero esto te devuelve el nombre del archivo entre corchetes y a la derecha el nombre de la hoja. Al utilizar IZQUIERDA, eliminamos todo lo que hay desde el corchete de cierre ] hasta el final. Con SUSTITUIR eliminamos el corchete de apertura [.
Si lo necesitas en una macro, puedes utilizar:
Application.ActiveWorkbook.Path
O si necesitas el nombre del archivo también:
Application.ActiveWorkbook.FullName
Un saludo