2014-07-07 4 views
1

Je l'ai trouvé tout à fait quelques tutoriels sur la façon de positionner userforms que vous créez dans Excel:Userform Positionnement dans Outlook

An d même this StackOverflow question qui utilise la même méthode.

Le problème est que Outlook semble utiliser la notation différente pour sa propre position - il n'y a pas une telle chose comme:

Application.Left or Application.Width 
Application.Top or Application.Height 

Est-ce que quelqu'un sait l'équivalent d'Outlook?

Répondre

3

Outlook peut avoir plusieurs fenêtres - Explorateurs (où vous voyez la liste des messages) et inspecteurs (où vous utilisez les détails d'un seul message).

Les objets Explorer et Inspector exposent les propriétés Width, Height, Left, Top. fenêtres Outlook sont exposées à travers

  • Application.ActiveWindow (l'Explorateur ou l'inspecteur)
  • Application.ActiveExplorer
  • Application.ActiveInspector
  • Application.Inspectors/Explorers collections.
+0

Merci pour votre réponse, et pour l'explication de la raison pour laquelle c'est le cas. J'ai maintenant mon code qui fonctionne. –

+0

Bon conseil! Vous pouvez centrer votre formulaire sur la fenêtre actuellement active en utilisant 'Me.Top = (Application.ActiveWindow.Top + Application.ActiveWindow.Height/2) - (Me.Height/2)' et 'Me.Left = (Application.ActiveWindow .Left + Application.ActiveWindow.Width/2) - (Me.Width/2) ' –