[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『Excel vbaで起動画面を最前面に表示したい』(nabe_y)
Excel vba にて
Shell "C:\Program Files\XXX\XXX\ApplicationHost.exe", vbNormalFocus
パッケージソフトを起動
sendkeysを使用して、請求書発行画面を選択
sendkeysでエンター
請求書発行画面は起動されるが、前面に表示されない。
この画面を前面に表示する方法を教えて頂ければと思います。
宜しくお願い致します。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _ (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function SetWindowPos Lib "user32" _ (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, _ ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, _ ByVal wFlags As Long) As Long Private Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, lpRect As RECT) As Long Private Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type Const HWND_TOP = 0 Const HWND_TOPMOST = -1
Sub test() Dim ih As Long Dim R As RECT
Shell "notepad.exe", vbNormalFocus ih = FindWindow(vbNullString, "無題 - メモ帳") GetWindowRect ih, R SetWindowPos ih, HWND_TOP, R.Left, R.Top, R.Right - R.Left, R.Bottom - R.Top, 0 End Sub
HWND_TOP で駄目だった場合は、HWND_TOPMOSTで最前面にしてみてください。
(???) 2019/12/02(月) 14:06
有難うございました。
(nabe_y) 2019/12/02(月) 16:09
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.