背景:嗨社区。我有个问题。我的老板让我用员工的ID从某个数据库中提取姓名。只有在不使用PHP编写的表单访问数据库时,这才会成为问题。第二个是我必须提取大约10k的结果。我计算了所需的时间,并得到了55个小时的沉闷工作。我说的是我和我即将连接的服务器的完美性能。我认为如果vba可以为我做这件事会很完美。情况如下。
问题:表单位于Intranet上的页面上。用户输入id,当单击“确定”按钮时,将生成一个表(提交前不存在),其中显示员工的姓名。问题是“确定”按钮没有ID,因此使用GetElementById是不可能的。我需要以某种方式提交表格。有人会帮忙吗?
代码:
Sub submitFeedback3()
Application.ScreenUpdating = False
Dim IE As Object
Set IE = New InternetExplorerMedium
IE.Visible = True
IE.navigate "SomePHP.php"
Application.StatusBar = "Submitting"
While IE.Busy
DoEvents
Wend
Dim doc As Object
Dim formx As Object
Set doc = IE.document
IE.document.getElementById("search_usrn").Value = "someID"
IE.document.all.Item("Ok").Click
Application.StatusBar = "Form Submitted"
IE.Quit
Set IE = Nothing
Application.ScreenUpdating = True
End Sub
我在IE.document中设置了一个监视器,它显示了结构。我能找到提交按钮,但我无法触发它。
是在IE.document>表格>项目1>第5项
这有以下属性我可以找到它:
outerHTML "INPUT type=submit value=Ok"
type "submit"
unique id "ms__id3"
value "Ok"
我能以某种方式触发它吗?或者还有其他方法吗? 希望你能帮帮我
答案 0 :(得分:0)
在我发布问题几分钟后能够管理它。只为其他人试图解决这个问题。如果提交按钮没有ID,您可以强制文档仅使用
提交document.forms(numberOfForm).submit
我知道但我做得很差。不要重复我的错误,数字从0开始而不是1.所以页面上只有表格的正确数字是0。