OVH Cloud OVH Cloud

Nom d'un control variable

2 réponses
Avatar
Fred87
Bonjour

Je cherche l'astuce pour passer le nom d'un controle en=20
variable.
Je l'explique:

C'est sur le clic d'un controle quelconque que je lance
un Sub dans lequel il est fait appel au nom du control qui=20
as lancer le sub.

Ici dans l'exemple le controle ayant lancer le sub=20
est "Image191"
'-------------------------------------------------------

Sub DD_OnMouseDown2(Button As Integer, Shift As Integer, x=20
As Single, y As Single, varDDopt As Variant, H, W, Name As=20
Variant)
.
.

'Name est =E9gale =E0 "Image191"
.
.

Set frm =3D Screen.ActiveForm ' defini le formulaire actif
Set ctlDrag =3D frm!Image191
'-------------------------------------------------------

Je voudrais utilis=E9 le m=EAme sub pour tout les controles de=20
mon formulaire est je passe en variable le nom du controle
ici "name"

Comment concat=E9ner la chaine pour avoir la m=EAme fonctions
que "Set ctlDrag =3D frm!Image191" =E0 l'aide de ma variable.

J'ai toujours le message "Type incompatible !!"

Merci d'avance pour un petit coup de pouce

Fred87

2 réponses

Avatar
Pierre CFI [mvp]
bonjour
essaie
Set ctlDrag = frm(Name)


--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Fred87" a écrit dans le message de news:1948f01c41c7c$335ecdb0$
Bonjour

Je cherche l'astuce pour passer le nom d'un controle en
variable.
Je l'explique:

C'est sur le clic d'un controle quelconque que je lance
un Sub dans lequel il est fait appel au nom du control qui
as lancer le sub.

Ici dans l'exemple le controle ayant lancer le sub
est "Image191"
'-------------------------------------------------------

Sub DD_OnMouseDown2(Button As Integer, Shift As Integer, x
As Single, y As Single, varDDopt As Variant, H, W, Name As
Variant)
.
.

'Name est égale à "Image191"
.
.

Set frm = Screen.ActiveForm ' defini le formulaire actif
Set ctlDrag = frm!Image191
'-------------------------------------------------------

Je voudrais utilisé le même sub pour tout les controles de
mon formulaire est je passe en variable le nom du controle
ici "name"

Comment concaténer la chaine pour avoir la même fonctions
que "Set ctlDrag = frm!Image191" à l'aide de ma variable.

J'ai toujours le message "Type incompatible !!"

Merci d'avance pour un petit coup de pouce

Fred87
Avatar
Fred87
Bonjour Pierre

C'est étonnant parfois sur les petits truc que l'on bute...

En tout les cas un trés trés grand MERCI pour ta
clairvoyance.

Fred87



-----Message d'origine-----
bonjour
essaie
Set ctlDrag = frm(Name)


--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Fred87" a écrit
dans le message de news:1948f01c41c7c$335ecdb0

$
Bonjour

Je cherche l'astuce pour passer le nom d'un controle en
variable.
Je l'explique:

C'est sur le clic d'un controle quelconque que je lance
un Sub dans lequel il est fait appel au nom du control qui
as lancer le sub.

Ici dans l'exemple le controle ayant lancer le sub
est "Image191"
'-------------------------------------------------------

Sub DD_OnMouseDown2(Button As Integer, Shift As Integer, x
As Single, y As Single, varDDopt As Variant, H, W, Name As
Variant)
..
..

'Name est égale à "Image191"
..
..

Set frm = Screen.ActiveForm ' defini le formulaire actif
Set ctlDrag = frm!Image191
'-------------------------------------------------------

Je voudrais utilisé le même sub pour tout les controles de
mon formulaire est je passe en variable le nom du controle
ici "name"

Comment concaténer la chaine pour avoir la même fonctions
que "Set ctlDrag = frm!Image191" à l'aide de ma variable.

J'ai toujours le message "Type incompatible !!"

Merci d'avance pour un petit coup de pouce

Fred87



.