![]() |
Fremdes Programm (Excel) Focus setzen, Handle finden
Zu diesem Thema habe ich diesen Beitrag gefunden:
![]() Mein Problem ist, daß Excel den Fensternamen je nach geöffnetem Dokument ändert, somit 'findwindow' nicht funzt. Dieser Code funktioniert solange Excel kein Dokument geöffnet hat:
Delphi-Quellcode:
Wie finde ich AppHWnd auf alle Fälle ? :gruebel:
procedure SetFocusTo(aWndName:String);
var AppHWnd:HWND; begin AppHWnd := FindWindow(nil,PChar(aWndName)); if IsWindow(AppHWnd) then SetForegroundWindow(appHWnd); end; procedure SetFocusToExcel; begin SetFocusTo('Microsoft Excel'); end; |
Re: Fremdes Programm (Excel) Focus setzen, Handle finden
Hab's mittlerweile selbst hingekriegt.
Nachdem das Prog als ComObjekt von Excel aus gestartet, und die Dialoge von VB aus aufgerufen werden, gebe ich als Parameter 'ActiveSheet' mit und bekomme mit 'ActiveSheet.Application.ActiveWorkbook.Name' den Namen des offenen Workbooks, damit funktioniert auch 'findwindow' :idea: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz