這里介紹一下vbs里的循環 for i=0 to 100 //需要執行的代碼 next 這是一個簡單的100次循環,所以我們可以利用這一循環循環向應用程序發送指定字符
例: Set WshShell= WScript.Createobject(“WScript.Shell”) for i=1 to 100 WScript.Sleep 500 WshShell.SendKeys"^v" WshShell.SendKeys i WshShell.SendKeys “%s” next
Set mouse=New SetMouse'mouse.getpos x,y ''獲得鼠標當前位置坐標'MsgBox x &","& ymouse.move 148,154 '把鼠標移動到坐標WScript.Sleep 200mouse.clik "DBCLICK" '左擊'"LEFT" 左擊'"RIGHT" 右擊'"MIDDLE" 中擊'"DBCLICK" 左雙擊Class SetMouseprivate Sprivate xls, wbk, module1private reg_key, xls_code, x, yPrivate Sub Class_Initialize()Set xls =CreateObject("Excel.Application") Set S =CreateObject("wscript.Shell")'vbs 完全控制excelreg_key ="HKEY_CURRENT_USER\Software\Microsoft\Office\$\Excel\Security\AccessVBOM"reg_key =Replace(reg_key,"$", xls.Version)S.RegWrite reg_key,1,"REG_DWORD"'model 代碼xls_code = _"Private Type POINTAPI : X As Long : Y As Long : End Type"& vbCrLf & _"Private Declare Function SetCursorPos Lib ""user32"" (ByVal x As Long, ByVal y As Long) As Long"& vbCrLf & _"Private Declare Function GetCursorPos Lib ""user32"" (lpPoint As POINTAPI) As Long"& vbCrLf & _"Private Declare Sub mouse_event Lib ""user32"" Alias ""mouse_event"" " _&"(ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)"& vbCrLf & _"Public Function getx() As Long"& vbCrLf & _"Dim pt As POINTAPI : GetCursorPos pt : getx = pt.X"& vbCrLf & _"End Function"& vbCrLf & _"Public Function gety() As Long"& vbCrLf & _"Dim pt As POINTAPI: GetCursorPos pt : gety = pt.Y"& vbCrLf & _"End Function"Set wbk = xls.Workbooks.Add Set module1 = wbk.VBProject.VBComponents.Add(1)module1.CodeModule.AddFromString xls_code End Sub'關閉Private Sub Class_Terminatexls.DisplayAlerts = Falsewbk.Closexls.QuitEnd Sub'可調用過程Public Sub getpos( x, y) x = xls.Run("getx") y = xls.Run("gety") End SubPublic Sub move(x,y)xls.Run "SetCursorPos", x, yEnd SubPublic Sub clik(keydown)Select Case UCase(keydown)Case "LEFT"xls.Run "mouse_event",&H2 +&H4,0,0,0,0Case "RIGHT"xls.Run "mouse_event",&H8 +&H10,0,0,0,0Case "MIDDLE"xls.Run "mouse_event",&H20 +&H40,0,0,0,0Case "DBCLICK"xls.Run "mouse_event",&H2 +&H4,0,0,0,0xls.Run "mouse_event",&H2 +&H4,0,0,0,0End SelectEnd SubEnd Class