因为要在公司OA系统做报销,每个月的重复工作量非常大,于是想用vba实现自动报销功能。利用getElementByid语句已经实现了自动登录功能,但遇到一个瓶颈就是不能利用此语句点击网页中的一个链接,若是平时手动点击该链接的话,会弹出一个选择动支单的框框,用了浏览器中F12查看,该链接是。
由于是内网,所以无法发网址,以下是oa界面的截图。
Sub FillAuto()
Dim dl As Object '定义浏览器变量
Set dl = CreateObject("InternetExplorer.Application") '创建浏览器变量
dl.Visible = True '显示浏览器
dl.Navigate "http://oa.xx.com/servlet/com.zotn.screens.HomeServlet" '打开OA首页
While dl.ReadyState <> 4 Or dl.Busy = True '检测浏览器是否完全打开
DoEvents '假如浏览器还没有完全打开,则等待
Wend
On Error Resume Next
With dl
.document.getElementByid("p_loginname").Value = "xx"
.document.getElementByid("p_password").Value = "xx"
.document.getElementByid("Submit").Click
End With