我正在尝试使用Excel VBA从网页视图源获取完整的特定文本。我能够找到文本但无法进入单元格。下面是我的VBA代码
Sub latlong()
Dim IE As Object
Dim html As HTMLDocument
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.navigate Range("p2")
Do While IE.Busy
Application.Wait DateAdd("s", 1, Now)
Loop
mes = IE.document.body.innerHTML
If InStr(mes, "var point") = 0 Then
ActiveSheet.Range("q2").Value = "Not Found"
Else
ActiveSheet.Range("q2").Value = "Found"
End If
IE.Quit
Set IE = Nothing
End Sub
我想复制以下特定文本的完整行是我试图从网页中提取的示例文本
var point = new GLatLng(17.71697,083.30275);
我找不到任何合适的答案,请帮助我
由于您知道线的起始位置,因此仅保留从开始到结束的线。该行以分号结尾。答案应该是这么简单:
Sub latlong()
Dim IE As Object
Dim html As HTMLDocument
Dim codeLine as String
Dim startPos as Long
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.navigate Range("p2")
Do While IE.Busy
Application.Wait DateAdd("s", 1, Now)
Loop
mes = IE.document.body.innerHTML
startPos = InStr(mes, "var point")
If startPos = 0 Then
ActiveSheet.Range("q2").Value = "Not Found"
Else
codeLine = Mid(mes, startPos, InStr(startPos, mes, ";") - startPos)
ActiveSheet.Range("q2").Value = codeLine
End If
IE.Quit
Set IE = Nothing
End Sub
无需RegEx。 :-)