Thema Datum  Von Nutzer Rating
Antwort
01.04.2022 11:54:32 Benutzer2255
NotSolved
01.04.2022 12:24:19 volti
NotSolved
01.04.2022 12:31:52 Benutzer2255
NotSolved
Blau Makro im Vordergrund
01.04.2022 14:19:19 volti
NotSolved
04.04.2022 09:16:30 Gast4546
NotSolved
04.04.2022 10:20:00 Volti
NotSolved

Ansicht des Beitrags:
Von:
volti
Datum:
01.04.2022 14:19:19
Views:
471
Rating: Antwort:
  Ja
Thema:
Makro im Vordergrund

Hallo,

bei mir funktioniert es.

Leider liefert Word nicht wie Excel über Application.hWnd das Applicationshandle. Dann könnte man über die API-Funktion SetForegroundWindow das Fenster in den Vordergrund setzen.

Das Fenster mittels Findwindow und dem Klassennamen und/oder dem Captiontext zu ermitteln ist eher schlecht, da man sie bei den neueren Word nicht so richtig ohne Hilfsmittel ermitteln kann und *-Suche nicht unterstützt wird.

Bleibt also m.E. nur das Durchscannen....

Teste mal folgenden Code:

Code:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
Private Declare PtrSafe Function SetForegroundWindow Lib "user32" (ByVal hwnd As LongPtrAs Long
Private Declare PtrSafe Function EnumWindows Lib "user32" (ByVal lpEnumFunc As LongPtr, _
        ByVal lParam As LongPtrAs Long
Private Declare PtrSafe Function GetWindowTextA Lib "user32" ( _
        ByVal hwnd As LongPtrByVal lpString As StringByVal cch As LongAs Long

Sub Click()
  Set wordapp = CreateObject("word.Application")
  wordapp.Documents.Add "C:\Users\....Meldung.docx"
  wordapp.Visible = True
  Call EnumWindows(AddressOf EnumWindowProc, ByVal 0&)

End Sub

Private Function EnumWindowProc(ByVal hwnd As LongPtr, lParam As LongPtrAs Long
' Scannt alle Fenster durch und stoppt beim Finden des gesuchten Fensters
  Dim sWinTxt As String * 260

  Call GetWindowTextA(hwnd, sWinTxt, 260)    ' Fenstertext holen
  If sWinTxt Like "* Word*Then
     SetForegroundWindow hwnd: Exit Function
  End If
  EnumWindowProc = 1                         ' Weiterscannen
End Function
_________
viele Grüße
Karl-Heinz

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
01.04.2022 11:54:32 Benutzer2255
NotSolved
01.04.2022 12:24:19 volti
NotSolved
01.04.2022 12:31:52 Benutzer2255
NotSolved
Blau Makro im Vordergrund
01.04.2022 14:19:19 volti
NotSolved
04.04.2022 09:16:30 Gast4546
NotSolved
04.04.2022 10:20:00 Volti
NotSolved