Problème userform sur deux écrans

Hello,

Je rencontre un petit problème pas bien méchant mais énervant.

Je travaille sur un pc à deux écrans.

J'ouvre un fichier excel sur l'écran de gauche (que ce soit en grande ou petite fenêtre) et quand mon userform s'ouvre, au lieu de s'afficher au milieu de mon fichier excel, il s'affiche sur l'écran de droite...

Bien sûr pas de problème avec un pc à un écran

Avez-vous une idée?

D'avance merci.

Bonjour,

À tester ...

Supposons que le userform concerné se nomme UserForm1.

Dans Private Sub UserForm_Activate() ajoute au bas UserForm1.Left = ActiveWindow.Left + 200 ... le 200 sera à ajuster selon la largeur des écrans.

ric

Bonjour,

Ouvre le VBA (alt F11) ou (Alt fn F11)

Place la fenêtre qui contient le userform dans l'écran 1.

Dans la propriété du userform tout en bas :

"StartUpPosition" essaies sur Manuel ou Center Position.

Enregistre les modifs fermes et ouvres pour tester.

Bonjour à tous,

Encore mieux ... pour que le userform soit toujours centré à l'écran quel qu'en soit le dimension ...

Toujours dans Private Sub UserForm_Activate()

UserForm1.Left = ActiveWindow.Left + ActiveWindow.Width / 2 - UserForm1.Width / 2

ric

Bonjour à tous,

@Xmenpl ... merci pour la piste 2 - CenterScreen fonctionne bien.

ric

Bonjour à tous,

@Xmenpl ... merci pour la piste 2 - CenterScreen fonctionne bien.

Moi j'ai du mettre "Manuel" car les informaticiens de mon bureau ont déclaré l'écran principal de droite

ric

Bonjour à tous,

Mon Excel version Microsoft Office 365 (version 1910 (build 12130.20272 Office)) ...

2 - CenterScreen a été testé sur un ordinateur muni de 3 écrans.

Cette commande centre bien le userform sur l'écran d'où il a été appelé par Excel.

Je n'ai pas la version Excel 2013 pour tester ... tels Nowhereman et Xmenpl.

ric

Bonjour à tous,

Encore mieux ... pour que le userform soit toujours centré à l'écran quel qu'en soit le dimension ...

Toujours dans Private Sub UserForm_Activate()

UserForm1.Left = ActiveWindow.Left + ActiveWindow.Width / 2 - UserForm1.Width / 2

ric

Hello, pour l'instant toutes mes tentatives sont vaines.

Je suis assez novice en VBA.

Je dois copier texto la ligne dans ThisWorkbook?

Si c'est bien là, ben ca fonctionne pas

Merci.

Bonjour à tous,

... Je dois copier texto la ligne dans ThisWorkbook? ...

Non, non, dans ton userform.

Double clique sur ton userform dans la colonne de gauche > le code apparaît à droite.

Si tu n'as pas de code qui se nomme : Private Sub UserForm_Activate()

Fais-toi une place entre deux macros ou complètement au bas.

Si tu as déjà un code qui se nomme : Private Sub UserForm_Activate()

Ajoute ceci juste avant le "End Sub"

UserForm1.Left = ActiveWindow.Left + ActiveWindow.Width / 2 - UserForm1.Width / 2

ric

Bonjour à tous,

... Je dois copier texto la ligne dans ThisWorkbook? ...

Non, non, dans ton userform.

Double clique sur ton userform dans la colonne de gauche > le code apparaît à droite.

Si tu n'as pas de code qui se nomme : Private Sub UserForm_Activate()

Fais-toi une place entre deux macros ou complètement au bas.

Si tu as déjà un code qui se nomme : Private Sub UserForm_Activate()

Ajoute ceci juste avant le "End Sub"

UserForm1.Left = ActiveWindow.Left + ActiveWindow.Width / 2 - UserForm1.Width / 2

ric

Mille mercis, ça fonctionne terriblement bien!

Tu es un Dieu!

ric

Rechercher des sujets similaires à "probleme userform deux ecrans"