Bug avec les userforms

Chris57

XLDnaute Occasionnel
Bonjour à tous,

je viens de réinstaller Excel 2007 et je connais un bug : lorsque j'affiche une userform et que j'impose sa position, l'userform refuse de s'afficher ou le code plante sur UserForm1.Show

J'ai testé sur un classeur vide avec uniquement une userform
Code:
Sub test()
    UserForm1.Show
End Sub

que je mette :
Code:
Private Sub UserForm_Activate()
    UserForm1.Top = 100
    UserForm1.Left = 500
End Sub
ou
Code:
Private Sub UserForm_Initialize()
    UserForm1.Top = 100
    UserForm1.Left = 500 '
End Sub

soit l'userform s'affiche au centre, soit la macro "test" reste figée dans sa seule instruction !
J'ai essayé en mettant la propriété StartupPosition sur 0, mais ça ne marche pas non plus

J'ai pourtant déjà fait ce genre de trucs des dizaines de fois, j'ai loupé quelque chose ???
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Bug avec les userforms

Bonjour.
Peut on supposer qu'il soit affiché … hors de votre vue ?
Après tout c'est normal d'être figé sur un Show d'un UserForm avec ShowModal = True.

J'ai trouvé il n'y a pas très longtemps un truc chouette pour le positionnement d'un UserForm par rapport à quelque chose.
Voir méthode UFmCalend.Posit
 

Pièces jointes

  • MonCalendrier.xlsm
    61.1 KB · Affichages: 43
  • MonCalendrier.xlsm
    61.1 KB · Affichages: 41
Dernière édition:

blord

XLDnaute Impliqué
Re : Bug avec les userforms

Bonjour à tous,

Si je peux apporter ma modeste contribution, voici le code que nous utilisons pour centrer le UserForm sur l'écran ou Excel est ouvert (plusieurs employés utilisant maintenant plus d'un écran...)

Private Sub UserForm_Activate()
'Positionnement du userform
Me.StartUpPosition = 0
Me.Top = Application.Top + ((Application.Height) / 2) - (Me.Height / 2)
Me.Left = Application.Left + ((Application.Width) / 2) - (Me.Width / 2)

DoEvents



Bonne journée....
 

Discussions similaires

Statistiques des forums

Discussions
312 325
Messages
2 087 307
Membres
103 513
dernier inscrit
adel.01.01.80.19