我试图从网站上获取信息,并成功地使用以下代码获得了这些信息:
Dim IE As New InternetExplorer
IE.Visible = False
IE.navigate "https://www.theconstructionindex.co.uk" & Range("URL_code").Value
Do
DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE
Dim doc As HTMLDocument
Set doc = IE.document
Dim sDD As String
sDD = doc.getElementsByTagName("TD")(1).innerText
Range("b2").Value = sDD
sDD = doc.getElementsByTagName("TD")(3).innerText
Range("b3").Value = sDD
sDD = doc.getElementsByTagName("TD")(5).innerText
Range("b4").Value = sDD
sDD = doc.getElementsByTagName("TD")(7).innerText
Range("b5").Value = sDD
sDD = doc.getElementsByTagName("TD")(9).innerText
Range("b6").Value = sDD
sDD = doc.getElementsByTagName("TD")(11).innerText
Range("b7").Value = sDD问题是,每次我按下按钮并运行代码时,它都会减慢计算机的速度。我确信这是内存管理问题。有人能建议如何在每次运行时释放此代码所使用的RAM吗?
发布于 2018-05-28 12:41:46
可能您没有关闭Internet的实例。它们是不可见的(IE.Visible = False),因此您看不到它们,但是它们在那里,它们正在吃内存。这是一个可能的解决办法:
TaskManager > Processes > InternetExplorer > Right Mouse Button > End Task实例;IE,就关闭它的每个实例。如下所示:Sub TestMe()
Dim ie As New InternetExplorer
ie.Visible = False
'do something here
ie.Quit
End Subhttps://stackoverflow.com/questions/50566564
复制相似问题