1 - Como puedo hacer para que haciendo doble click en una celda, ¿me ejecute una macro?. Desde ya muchas gracias. Saludos. Nepo
1 Respuesta
Respuesta de fejoal
1
1
fejoal, Por falta de tiempo para responder como me gusta hacerlo suspendo...
A través del evento BeforeDoubleClick disponible para cada hoja de un libro podrás lograr tu objetivo. Para que funcione, activa el editor de Visual Basic (presiona Alt+F11) y busca la hoja donde quieres que esto ocurra (donde estaría la celda sensible al doble click). Haz, precisamente, doble click sobre ella. (Otra forma de llegar a este punto es hacer click derecho sobre la solapa de esta hoja y elegir la opción "VEr Código) Copia el código siguiente y pégalo en el panel desplegado a la derecha de su Editor de Visual Basic: Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) 'Nepo, Ingresa la dirección de la celda sensible a doble clik aquí: sensCelda = "G16" '------------- gracias! If Target.Address(falso, falso) = sensCelda Then 'Coloca a continuación lo que quieres que haga la macro ' al hacer dobble click sobre la celda indicada: If Target.Value Then Target.Interior.ColorIndex = xlColorIndexNone Target.ClearContents Application.SendKeys "{ESC}" Else Target.Interior.ColorIndex = 6 Target.Value = True Application.SendKeys "{ESC}" End If End If End Sub Como verás la macro reacciona ante el doble click y controla si la celda tocada es la que le indicaste y, en tal caso ejecuta las sentencias encerradas en el condicional. Si no lo es, no hace nada. En el ejemplo que te envío, al hacer doble click pinta la celda de amarillo e introduce "VERDADERO". Si la celda tuviera algo dentro, la deja en blanco. Pero, desde luego, puede reemplazar las instrucciones intermedias por tu propia macro o una referencia a ella. aclarando qué entendí mal o qué faltó.