Dans ma feuille j'ai un bouton (Controle ActiveX | nom : "BoutonVues") que je voudrais activer (faire comme si manuellement je cliquais dessus) à partir d'une macro dans "ThisWorkBook" lors de la fermeture du classeur.
Re : Activer un "Controle ActiveX" à partir d'une macro
Rebonsoir,
Les choses ne sont jamais simples...
Je voudrais réaliser cette opération non pas du module de la feuille où se trouve le bouton "BoutonVues", mais à partir d'un module standard.
J'ai écri ceci :
VB:
Sub Essai2() 'ici tu tapes f5 et tu verras l'action du button se faire
Dim x As OLEObject
Set x = Sheets("BTX").OLEObjects("BoutonVues")
x.Select 'ça marche
'x = True 'ça ne marche pas
End Sub
Re : Activer un "Controle ActiveX" à partir d'une macro
Bonsoir Eriiiic,
Désolé mais ça ne marche pas à partir d'un module standard.
Mais je pense qu'il faut auparavant déclarer dans ce même module l'objet "BoutonVues" pour qu'il sache ce que c'est et où il est.
Re : Activer un "Controle ActiveX" à partir d'une macro
Re,
Effectivement, ça marche.
C'est très curieux.
Dans mon classeur, la feuille se nomme "BTX". Je nomme ta feuille "BTX" et je modifie la mini-macro en conséquence, ça marche.
Maintenant je nomme le bouton "BoutonVues", je fais la modif dans la macro :
VB:
Sub test()
Sheets("BTX").BoutonVues = True
End Sub
Re : Activer un "Controle ActiveX" à partir d'une macro
Parfois on voit compliqué-tordu et ce fut le cas pour ce fil.
Le bouton déclenche une macro.
Je voudrais déclencher la macro ailleurs. Je me dis "faut cliquer sur le bouton". Et je me fixe sur le bouton. Comment donc faire en sorte pour cliquer sur le bouton en dehors de la feuille et que la macro s'exécute ? ... enfin, une histoire de boutons...
Bref, la solution est évidente : on déclenche directement la macro d'où on veut !
VB:
Sub MortAuBouton()
ChangeEtat 'la macro déclenchée par le bouton
End Sub