ABRIR UN DIRECTORIO DEPENDIENDO DE UNA FECHA
En esta macro de Excel se muestra como abrir un directorio dependiendo del nombre escrito en una celda, en este caso puntual en las celdas se encuentra escrita una fecha, la macro toma esa fecha y abre el directorio que lleva ese nombre, en el ejemplo las celdas tienen fecha y cada fecha tiene un directorio asociado que tiene la fecha de la celda.
Maneja Excel como los mejores deberías hacer click acá, si quieres aprender sobre Excel en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los ❤️MEJORES CURSOS de EXCEL ON LINE❤️ que he visto en internet, te lo recomiendo no te arrepentirás.
MACRO PARA ABRIR EXPLORADOR DE WINDOWS
En el ejemplo se puede observa una hoja de Excel en la fila 2 hay una serie de fechas, haciendo doble click en la celda que contiene la fecha requerida, se abre el explorador de archivos de Windows, abriendo el directorio que coincide con la fecha seleccionada en la celda, en este caso es una fecha, pero puede ser cualquier nombre, abriendo la carpeta que coincide con ese nombre.
La macro de Excel verifica si existe el directorio en primer lugar, en caso que no exista lo crea, si existe abre el directorio mostrando los archivos correspondientes.
Explicación de la Macro Excel PARA ABRIR EXPLORADOR DE ARCHIVOS DE WINDOWS
La macro se debe agregar en la hoja donde estemos trabajando o donde requiramos que se ejecute la macro, es decir en «Worksheet» evento «BeforeDoubleClick», cuando se haga un doble click, la macro verificará si se produjo sobre la fila dos columna B en adelante, para eso se usa el código siguiente:
If Target.Row = 2 And Target.Column > 1 And Cells(Target.Row, Target.Column) <> Empty Then
En caso positivo se obtiene la direccion de la celda donde se hizo doble click con el objeto de determinar el nombre string o cadena de texto que hay en esa celda, cargandose en la variable «MyDirec», el nombre, string o cadena de carateres que haya en la celda donde se hizo click, se usa el siguiente código
MyDirec = Replace(Cells(Target.Row, Target.Column), «/», «»)
Notese que en la celda existen fechas, en este caso se debe reemplazar las «/» por otro carácter o por nada, ya que es un caracter reservado de Windows y no puede ser usado como nombre de una carpeta o archivo, en el ejemplo se reemplaza la «/» por nada quedando la fecha en este formato «20122021» en vez de «20/12/2021», siendo el nombre del directorio que buscará para abrir la macro.
Luego se llama a la macro «OpenDirec», así:
Call OpenDirec
La macro que se llama en el procedimiento anterior se encuentra en un módulo, dicha macro forma la ruta donde que se debe abrir según la fecha seleccionada, en este caso la ruta de la carpeta se encuentra en el mismo directorio que la macro, en caso que ustedes tengan otra ruta deben reemplazar ActiveWorkbook.path por la ruta correcta, éste código nos brinda la ruta del archivo actual que contiene la macro y que estamos usando:
ruta = ActiveWorkbook.path & «\» & MyDirec
Nótese que la ruta se conforma con el nombre existente en la celda donde se hizo click y se guardo en la variable «MyDirec»
Posteriormente la macro determina si existe el directorio con este código
If Dir(ruta, vbDirectory) = «» Then
En caso que la ruta o carpeta NO exista crea la carpeta y luego abre el explorador de archivos de Windows en la ruta del directorio creado, así:
MkDir ruta
ShellExecute 0, «Open», ruta, «», «», 1
En caso que la ruta o directorio exista directamente abre la carpeta seleccionada, con el siguiente código:
ShellExecute 0, «Open», ruta, «», «», 1
Código Para Abrir UN DIRECTORIO O CARPETA CUYO NOMBRE ESTÁ ESCRITO EN UNA CELDA
Código que va en Worksheet
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
On Error Resume Next
If Target.Row = 2 And Target.Column > 1 And Cells(Target.Row, Target.Column) <> Empty Then
MyDirec = Replace(Cells(Target.Row, Target.Column), «/», «»)
Call OpenDirec
End If
End Sub
Código que va en un módulo
Sub OpenDirec()
On Error Resume Next
ruta = ActiveWorkbook.path & «\» & MyDirec
If Dir(ruta, vbDirectory) = «» Then
MkDir ruta
ShellExecute 0, «Open», ruta, «», «», 1
Else
ShellExecute 0, «Open», ruta, «», «», 1
End If
End Sub
Puedes DESCARGAR el Libro Como Abrir Explorador de Windows dependiendo del nombre que esté en una celda
Descarga el fichero usado como ejemplo en este post y en el vídeo explicativo, el mismo es totalmente gratuito y su uso es libre, solicito aportar para sostener esta web, si está dentro de tus posibilidades, desde ya muchas gracias.
Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.
If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.
Donate:
👉⏩ Cuenta Paypal: https://paypal.me/programarexcel
👉⏩ Cuenta Bitcoin: 1KBGGb8fyDzyR3X1Rie6m7VguzaAfngNbd
👉⏩ Cuenta Ether: 0x41Bbd24556914C83a31217eBb3BC49789b66e407
👉⏩ Cuenta Skrill: marcrodos@yahoo.es
👉⏩ Cuenta Neteller: marcrodos@yahoo.es
👉⏩ Apoya mi trabajo https://www.patreon.com/programarexcel
👉⏩ Sígueme en DTube: https://d.tube/#!/c/programarexcel01
👉⏩ Sígueme en Odysee: https://odysee.com/@programarexcel:3