
Ejecutar macro al cambiar el nombre de una hoja
Publicado por jorge (2 intervenciones) el 06/02/2024 13:04:01
Alguna ocurrencia para ejecutar una macro en excel al cambiar el nombre de cualquier hoja del libro?? Solo he encontrado dos eventos que se ejecutan al cambiar el nombre de la hoja, los eventos calculate de workbook y también de worksheet, pero solo he conseguido algo medianamente aceptable haciendo chapucillas para capturar el nombre de la hoja actual con la fórmula Celda() de excel y el anterior escrito en otra celda que al correr la macro actualiza por otra vía, por lo que cuando ambos valores son diferentes el evento calculate me lanza la macro... el problema es que este evento se ejecuta para cada modificación en la hoja/libro y me termina ralentizando el trabajo y generando otros conflictos...
Private Sub Worksheet_Calculate()
If Range("A1").Value <> Range("A2").Value Then
Application.EnableEvents = False
'Instrucciones requeridas para la macro
Range("A2").Value = Range("A1").Value
Application.EnableEvents = True
end sub
Capturando el nombre de la hoja en A1 con la fórmula: =EXTRAE(CELDA("nombrearchivo";A1);ENCONTRAR("]";CELDA("nombrearchivo";A1))+1;31)
Private Sub Worksheet_Calculate()
If Range("A1").Value <> Range("A2").Value Then
Application.EnableEvents = False
'Instrucciones requeridas para la macro
Range("A2").Value = Range("A1").Value
Application.EnableEvents = True
end sub
Capturando el nombre de la hoja en A1 con la fórmula: =EXTRAE(CELDA("nombrearchivo";A1);ENCONTRAR("]";CELDA("nombrearchivo";A1))+1;31)
Valora esta pregunta


0