Descripteur pour une Feuille Word

Résolu
Lunikmarty Messages postés 55 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 17 avril 2008 - 25 mars 2008 à 19:53
Lunikmarty Messages postés 55 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 17 avril 2008 - 25 mars 2008 à 22:37
Bonjour,

Voila mon problème, j'ai une source qui lance une application Word
(sans l'afficher). Lorsque mes différents traitements sont finis, une
feuille de dialogue s'affiche et donne la possibilité de visualiser le document Word.... Lorsque
je click sur visualiser mon document s'affiche bien mais, en arriére
plan !? J'aimerais qu'il ce trouve au premier plan, c'est à dire devant
la feuille de mon application.

J'ai pensé à l'utilisation d'un API pour solutionner mon probléme:

Private Declare Function BringWindowToTop Lib "user32" (ByVal hWnd As Long) As Long

Le problème s'est que la propriété " hWnd " qui référence la fenêtre active n'existe pas pour les documents Word. Comment  récupérer le descripteur (ou une propriété équivalente à hWnd) d'un document Word ??

Merci pour vos conseils.

1 réponse

Lunikmarty Messages postés 55 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 17 avril 2008
25 mars 2008 à 22:37
Régle numéro 1: Il faut toujours persévérer, voila la réponse pour ceux que sa interesse:



' Déclaration des API pour passer la main à l'application Word

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Declare Function BringWindowToTop Lib "user32" (ByVal hWnd As Long) As Long

Private Sub cmdVisualisation_Click()

    Dim Word_hwnd As Long

    ' Récupération du Handle de l'application Word
    lWord_hwnd = FindWindow(vbNullString, "[Nom du doc] - Microsoft Word")
    ' Affichage de l'application
    BringWindowToTop Word_hwnd

End Sub
3
Rejoignez-nous