Lunikmarty
Messages postés55Date d'inscriptionlundi 3 mars 2008StatutMembreDernière intervention17 avril 2008
-
25 mars 2008 à 19:53
Lunikmarty
Messages postés55Date d'inscriptionlundi 3 mars 2008StatutMembreDernière intervention17 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 ??
Lunikmarty
Messages postés55Date d'inscriptionlundi 3 mars 2008StatutMembreDernière intervention17 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