Desencadenar un evento al hacer click en una celda
Querría que, al hacer click en una celda de un rango determinado (concretamente G7:G38), excel comprobase si esa celda contiene ya un valor. De ser así, debería mostrar un mensaje (por ejemplo: "Esta celda contiene ya un valor") y en caso contrario debería aumentar el zoom o el tamaño de letra de dicha celda. Debo comentar que las celdas del rango mencionado son listas de validación. El problema es que si asocio una macro que realice dicha función al evento Worksheet_SelectionChange(ByVal Target As Range) de la hoja en cuestión, se desencadena el evento siempre que cualquiera de esas celdas recibe el enfoque, es decir, si estoy en la celda F7 y pulso el tabulador, inmediatamente me muestra un mensaje o aumenta el zoom. El problema es que no deseo que actue así, sino que lo que quiero es que me muestre el mensaje cuando elijo una de las celdas del rango mencionado con la intención de elegir un valor, pero NO en el resto de las ocasiones en las que, al desplazarme por la hoja, alguna de esas celdas recibe el enfoque.
Por otro lado, en lugar de utilizar el siguiente código para aumentar el zoom:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Dim RangoDeBusqueda As Range
Set RangoDeBusqueda = Application.Intersect(Target, Range("G7:G38"))
If Not RangoDeBusqueda Is Nothing Then
ActiveWindow.Zoom = 120
Else
ActiveWindow.Zoom = 70
End If
End Sub
Preferiría utilizar:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Font.Size=10
Target.Font.Size = 25
Target.Columns.Autofit
End Sub
Ya que, con el primero, al aumentar o disminuir el zoom, da la sensación de que la pantalla "se desplaza" y resulta fácil perder de vista la celda que quería modificar...
Es más, este último código, iría bien para utilizar en todas las celdas del rango B7:J38, exceptuando las de la columna G, en las que desearía que se activase exclusivamente cuando se hace click en alguna de ellas. Además, y para complicar más las cosas, en esas celdas en las que se activase con un click, debería "desactivarse" al cambiar de celda (es decir, en la columna G se desencadena el evento para aumentar el tamaño de la fuente al hacer click, volviendo al tamaño original al cambiar de celda...
Buscando por internet, encontré algo que tal vez podría servirme pues hablaba de desencadenar evento al hacer click con el botón izquierdo del ratón, pero no pude llegar a ver el código, pues no estaba registrado y por algún motivo, no pude registrarme (cada vez que lo intentaba, se colgaba...)