【发布时间】:2019-01-19 01:29:32
【问题描述】:
几年前,我用 VBA 编写了代码,在 IE 中打开一个网站,并用 Excel 文件中的数据填充文本框。不幸的是,我现在使用的是 Windows 10,这个程序不再工作了。它可以毫无问题地打开网站,但无法将数据转置到文本框中。它只是打开网站并停止(不输入数据)。
该程序在 Windows 7 的 IE 中仍然可以运行,没有任何问题。我尝试了多台装有 Windows 10 的笔记本电脑,但问题再次出现。
我尝试将最后的代码从 IE.Document.All("Response_123").Value 更改为 IE.Document.getElementById("Response_123") 以查看是否会将我的 Excel 值复制到文本框中,但它仍然是空白的。
Sub test()
Dim IE As Object
WebAddress = "https://CONFIDENTIAL_URL.com/"
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate WebAddress
While IE.busy
DoEvents 'wait until IE is done loading page.
Wend
Application.wait (Now + TimeSerial(0, 0, 4))
IE.Document.getElementById("Response_123").Value = ThisWorkbook.Sheets("Sheet1").Range("B5")
End Sub
我希望将 B5 处的 Excel 工作表中的值复制到 ID 为“Response_123”的文本框中(通过右键单击文本框 > 检查获得),但它不会复制任何内容并保持空白。同样,让我的代码在 Windows 7 中运行没有问题。
【问题讨论】:
-
请发布至少部分 HTML 代码,其中包含目标元素以及它嵌套到
<body>的所有元素。比较 Win 7 和 10 的 HTML。 -
这似乎重复了您之前的问题。由于他们似乎专注于同一个问题,您可以关闭此问题,然后将您的答案发布在较早的问题上。我很高兴你得到了答案!
标签: excel vba internet-explorer windows-10