Un post bastante relacionado con el tema de ejecutar macros dependiendo donde se encuentra la celda activa es como ejecutar una macro al activar una celda, lo cual es bastante útil cuando se requiere que la macro ejecute un determinado códido de VBA si la celda activa está en cierta posición, por ejemplo si la celda activa esta en la columna A2 ejecute cierta suma, si esta en A3 otra suma u cualquier operación o evento que queramos que ocurra dependiendo si el cursor se encuentra en el rango requerido.
Public celdaAnt
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
‘rutina que ilumina la celda 2 col delante
‘solo se ejecuta si se selecciona 1 celda de la col C
If Target.Cells.Count = 1 And Target.Column = 3 Then
Target.Offset(0, -2).Interior.ColorIndex = 5 ‘color azul a la celda
‘Target.EntireRow.Interior.ColorIndex = 3 ‘color rojo a la fila
If celdaAnt <> «» Then
Range(celdaAnt).Interior.ColorIndex = 0 ‘quita color a la celda
‘Range(celdaAnt).EntireRow.Interior.ColorIndex = 0 ‘quita color a la fila
End If
‘se guarda la celda anterior
celdaAnt = Target.Offset(0, -2).Address
End If
End Sub
.
Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends