se ejecute un procedimiento con solo clicar

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

se ejecute un procedimiento con solo clicar

Notapor CHALS » 07 Feb 2012 05:27

Deseo que con un simple click en una celda se ejecute un procedimiento Visual Basic.
Es decir, que tengo un rango de filas que contiene una lista de numeros+textos, como por ejemplo :
D110 contiene "001-Juan"
D111 contiene "002-Pepe"
Y así hasta D290 "181-Antonio"
Quisiera que con solo hacer click (o doble click, o click derecho) en, por ejemplo, la celda D111, que contiene "002-Pepe", ejecute cierta subrutina que ya he creado con Visual Basic.
Lo que haría esa subrutina es visualizar un cuadro que contiene datos que corresponden a la fila seleccionada (en ese caso datos referidos a Pepe).
¿Cómo puedo lograrlo?. Una forma muy engorrosa sería por ejemplo crear a la izquierda de cada celda Dxxx un botón (control) que al pincharlo ejecutara la rutina, pero haciendo que cada botón (de los 180 botones) mostrara los datos referidos a la celda que tiene a la derecha. Por ejemplo si se pincha el botón que estuviera a la izquierda de D111 la rutina trabajara con Pepe. Pero evidentemente ese es un método muy engorroso.
Espero haberme explicado.
Os agradeceré si podéis darme alguna sugerencia.
Saludos a todos(as).
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
CHALS
Miembro Frecuente
Miembro Frecuente
 
Registrado: 07 Feb 2012 05:03

Re: se ejecute un procedimiento con solo clicar

Notapor Antoni » 07 Feb 2012 07:32

Hola:

Pon esta macro en la hoja en que deses ejecutar la macro.


Código: Seleccionar todo
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("D110:D290")) Is Nothing Then MiMacro
End Sub



Evidentemente, has de sustituir MiMacro por el nombre de la macro que quieras ejecutar.


Saludos
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
Antoni
Miembro Frecuente
Miembro Frecuente
 
Registrado: 22 Dic 2009 04:58
Ubicación: GALICIA (ESPAÑA)

Re: se ejecute un procedimiento con solo clicar

Notapor CHALS » 07 Feb 2012 09:12

Antoni escribió:Hola:

Pon esta macro en la hoja en que deses ejecutar la macro.
Código: Seleccionar todo
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("D110:D290")) Is Nothing Then MiMacro
End Sub

Evidentemente, has de sustituir MiMacro por el nombre de la macro que quieras ejecutar.
Saludos


Muchas gracias. Es justo lo que buscaba. Ahora hago que MiMacro trabaje con Activecell.value y lo demás ya sé gestionarlo.
Repito; muchas gracias, tanto por la calidad de la respuesta como por la prontitud.
Y saludos a todos.
:D :D :D
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
CHALS
Miembro Frecuente
Miembro Frecuente
 
Registrado: 07 Feb 2012 05:03


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados