3.如何检测出已经打开了多少个EXCEL表格?#include <winapi.au3>
Local $iProcessID
$pid=ProcessExists("EXCEL.exe")
Sleep(1000)
$wlis=WinList()
$excelnumber=0
for $i=1 to $wlis[0][0]
if $wlis[$i][0]<> "" AND IsVisible($wlis[$i][1]) then
_WinAPI_GetWindowThreadProcessId($wlis[$i][1], $iProcessID)
If StringInStr($wlis[$i][0], "Microsoft Excel") then
$excelnumber=$excelnumber+1
EndIf
EndIf
Next
MsgBox(0,'',"目前打开了"&$excelnumber&'个EXCEL表格')
Func IsVisible($handle)
If BitAnd( WinGetState($handle), 2 ) Then
Return 1
Else
Return 0
EndIf
EndFunc
4.如何检测出已经打开了多少个WORD文档?#include <winapi.au3>
Local $iProcessID
$pid=ProcessExists("WORD.exe")
Sleep(1000)
$wlis=WinList()
$excelnumber=0
for $i=1 to $wlis[0][0]
if $wlis[$i][0]<> "" AND IsVisible($wlis[$i][1]) then
_WinAPI_GetWindowThreadProcessId($wlis[$i][1], $iProcessID)
If StringInStr($wlis[$i][0], "WORD") then
$excelnumber=$excelnumber+1
EndIf
EndIf
Next
MsgBox(0,'',"目前打开了"&$excelnumber&'个WORD')
Func IsVisible($handle)
If BitAnd( WinGetState($handle), 2 ) Then
Return 1
Else
Return 0
EndIf
EndFunc
如何在两个(或更多)WORD之间切换.
_WordAttach 貌似能办到 |