Como puedo ejecutar un Sub desde una funcion

4 envíos / 0 nuevos
Último envío
excel1977
Imagen de excel1977
Offline
última acción: Hace 1 año 12 meses
Nivel 1 - 200 puntos
alta: 19/11/2014 - 10:00
Puntos: 450
Como puedo ejecutar un Sub desde una funcion

Buenas de nuevo,

Lo que quiero hacer basicamente es que se me ejecute un sub sin pulsar ningun tipo de boton, como si fuese una función

Tengo un Sub que funciona bien, pero para ejecutarlo tengo que pulsar un botón al que he asignado una macro, pues bien me gustaría que se ejecutase automáticamente ese sub cuando modifico los parámetros que le afectan pero sin tener que pulsar el botón, es decir como si fuese una function.-

 

¿ Se podría hacer desde una fuction haciendo una llamada al Sub ? La verdad que no tengo ni idea de como hacer esto.

 

Gracias y saludos.-

Cron
Imagen de Cron
Offline
última acción: Hace 2 semanas 6 días
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 12725
Pues claro que se puede hacer

Pues claro que se puede hacer.

En el código, selecciona primero Worksheet y después Change.

Esto te crea la subrutina Worksheet_Change.

También se habrá creado la de Selectionchange. Si no la vas a utilizar, puedes borrarla.

Dentro de Worksheet_Change tienes que hacer una comprobación:

     If Target.Address = "$D$6"            <-----------------Aquí compruebas que la celda que ha cambiado es a la que le quieres aplicar el código. He puesto como ejemplo la D6, pero puedes poner la que quieras.

              Aquí haces cosas

     end If


Si quieres hacer cosas diferentes en función de la celda que cambie, puedes hacer un SELECT CASE así:

    Select case Target.Address

       Case "$D$6"

                  Haces cosas

        Case "$A$1"

                 Haces otras cosas

      End select

 

Debes tener en cuenta que no funcionará sin los símbolos de dólar, pues así es como Excel envía la dirección de la celda.

Un saludo

excel1977
Imagen de excel1977
Offline
última acción: Hace 1 año 12 meses
Nivel 1 - 200 puntos
alta: 19/11/2014 - 10:00
Puntos: 450
Está hecho, gracias.-

Está hecho, gracias.-

cesar.ivan
Imagen de cesar.ivan
Offline
última acción: Hace 7 años 6 meses
Nivel 1 - 200 puntos
alta: 07/06/2014 - 21:47
Puntos: 260
Que bueno es saber que Visual

Que bueno es saber que Visual Basic nos ayuda a realizar tareas que Excel regular no nos permite hacer :)