XL 2016 VBA - Comment activer un UserForm vbModeless

Dudu2

XLDnaute Barbatruc
Bonjour,

Je ne trouve pas le moyen de faire un SetFocus sur un Control de UserForm vbModeless après ré-activation du UserForm quand par exemple, l'utilisateur a cliqué dans la feuille puis clique dans le UserForm

Cordialement
VB:
Private Sub UserForm_Activate()
    'SetFocus sur la TextBox
    Me.TextBox1.SetFocus
End Sub

Private Sub UserForm_Click()
    AppActivate Me.Caption
 
    'Ne SetFocus de rien du tout !
    Me.TextBox1.SetFocus
End Sub

Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
 
End Sub

Et si je déplace la séquence dans le UserForm_MouseMove() j'arrive encore moins à conditionner son exécution par le fait que le UserForm n'est pas actif.
 

Pièces jointes

  • Classeur1.xlsm
    19.3 KB · Affichages: 4
Dernière édition:

Dudu2

XLDnaute Barbatruc
Je trouve qu'en vbModeless c'est très très emm... car quand le UserForm est désactivé par une manip (sélection dans la feuille, sélection d'une autre feuille) l'évènement _Deactivate() ne se déclenche pas, pas plus que l'évènement _Activate() lors qu'on revient dans le UserForm en cliquant dans un Control quelconque. Alors que ces mêmes évènements sont déclenchés quand un autre UserForm est affiché "par dessus" le UserForm en cours.
 

Discussions similaires

Réponses
29
Affichages
1 K

Statistiques des forums

Discussions
312 836
Messages
2 092 656
Membres
105 480
dernier inscrit
Galbius