¿Como ejecutar una sub con distintos parámetros desde varios botones de un formulario?

18/07/2006 - 21:01 por Vicente | Informe spam
Tengo una hoja con varios botones de los de tipo formulario que deben
ejecutar una misma sub pero con distintos parámetros

¿Se puede hacer? ¿Cómo? En principio parece que solo se pueden asignar
macros sin argumentos

Gracias

Preguntas similare

Leer las respuestas

#1 Abraham
18/07/2006 - 21:26 | Informe spam
Puedes ser un poquito mas explicito. Creo entender, pero la verdad no
estoy seguro.

Abraham
Respuesta Responder a este mensaje
#2 Alexander Chacin
19/07/2006 - 02:05 | Informe spam
Prueba leer los argumentos en función del nombre del control utilizando la
propiedad caller

Saludos
Alexander Chacin

"Vicente" <Sin Dirección> escribió en el mensaje
news:
Tengo una hoja con varios botones de los de tipo formulario que deben
ejecutar una misma sub pero con distintos parámetros

¿Se puede hacer? ¿Cómo? En principio parece que solo se pueden asignar
macros sin argumentos

Gracias



Respuesta Responder a este mensaje
#3 Vicente
19/07/2006 - 10:25 | Informe spam
Pues vamos a ver...

Imaginate que tengo 7 "contadores" distintos en una misma hoja. El proceso
de poner en marcha cada contador es el mismo (salvo con unas pequeñas
diferencias que no vienen al caso)

Tengo 7 botones (de los de formulario) para poner en marcha dichos
contadores.

En principio los 7 botones deberían llamar a la misma sub (por ejemplo
"PonerEnMarcha") y pasar como argumento el número de contador. Es decir...

Botón 1 --> PonerEnMarcha (1)
Botón 2 --> PonerEnMarcha (2)

Botón 3 --> PonerEnMarcha (3)
...

Sin embargo no me deja asignar a un botón una sub argumentos por lo que
tengo que crear tantas subs como botones que, estos si, llamen a la sub con
argumentos. Es decir

Botón 1 --> PonerEnMarcha1 () --> PonerEnMarcha (1)
Botón 2 --> PonerEnMarcha2 () --> PonerEnMarcha (2)
Botón 3 --> PonerEnMarcha3 () --> PonerEnMarcha (3)
...

Esto no me parece serio y supongo que se podrá hacer de alguna manera y que
soy yo el que hace algo mal

"Abraham" escribió en el mensaje
news:
Puedes ser un poquito mas explicito. Creo entender, pero la verdad no
estoy seguro.

Abraham


Respuesta Responder a este mensaje
#4 Alexander Chacin
20/07/2006 - 03:22 | Informe spam
Definitivamente luego de leer tu explicación te recomiendo que utilices algo
como esto

Public Sub PonerEnMarcha()
Select Case Application.Caller

Case "Botón 1"
' Inicializar contador 1

Case "Botón 2"
' Inicializar contador 2

Case "Botón 3"
' Inicializar contador 3

Case "Botón 4"
' Inicializar contador 4

Case "Botón 5"
' Inicializar contador 5

Case "Botón 6"
' Inicializar contador 6

Case "Botón 7"
' Inicializar contador 7

End Select
End Sub

El caller reconoce estos nombres, no el texto en el botón

Saludos
Alexander Chacin

"Alexander Chacin" escribió en el mensaje
news:%
Prueba leer los argumentos en función del nombre del control utilizando la
propiedad caller

Saludos
Alexander Chacin

"Vicente" <Sin Dirección> escribió en el mensaje
news:
Tengo una hoja con varios botones de los de tipo formulario que deben
ejecutar una misma sub pero con distintos parámetros

¿Se puede hacer? ¿Cómo? En principio parece que solo se pueden asignar
macros sin argumentos

Gracias









Respuesta Responder a este mensaje
#5 Vicente
20/07/2006 - 17:41 | Informe spam
Muchas gracias por tu ayuda a esta pregunta y a la anterior

"Alexander Chacin" escribió en el mensaje
news:%
Definitivamente luego de leer tu explicación te recomiendo que utilices
algo como esto

Public Sub PonerEnMarcha()
Select Case Application.Caller

Case "Botón 1"
' Inicializar contador 1

Case "Botón 2"
' Inicializar contador 2

Case "Botón 3"
' Inicializar contador 3

Case "Botón 4"
' Inicializar contador 4

Case "Botón 5"
' Inicializar contador 5

Case "Botón 6"
' Inicializar contador 6

Case "Botón 7"
' Inicializar contador 7

End Select
End Sub

El caller reconoce estos nombres, no el texto en el botón

Saludos
Alexander Chacin

"Alexander Chacin" escribió en el mensaje
news:%
Prueba leer los argumentos en función del nombre del control utilizando
la propiedad caller

Saludos
Alexander Chacin

"Vicente" <Sin Dirección> escribió en el mensaje
news:
Tengo una hoja con varios botones de los de tipo formulario que deben
ejecutar una misma sub pero con distintos parámetros

¿Se puede hacer? ¿Cómo? En principio parece que solo se pueden asignar
macros sin argumentos

Gracias















email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida