在Web查询中查找字符串,而不在页面上放置网页内容

时间:2015-10-29 14:50:35

标签: excel vba excel-vba excel-2007

我在宏中有一个webquery。

.Refresh BackgroundQuery:=False

以上行将网页内容放在活动工作表中。然后我找到一个字符串"批准"使用下面给出的代码

Set findRng = Cells.Find(What:="approved", After:=ActiveCell, _
        LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
        SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)

如果找到了字符串,我会使用下面给出的代码做一些工作

If Not findRng Is Nothing Then 
    'do some job
End If

我是否可以直接从内存或某种数组中找到单词approved,而无需将网页内容放在表格中,如果是,怎么做?

1 个答案:

答案 0 :(得分:0)

Function GetResponseText(url as String) as String
  Dim objHttp As Object
  objHttp = CreateObject("MSXML2.ServerXMLHTTP")
  objHttp.Open("GET", url, False) 
  objHttp.Send("")
  GetResponseText = objHttp.ResponseText
End Function

GetResponseText包含html作为文本(完整脚本) 搜索:

If instr(GetResponseText([your url]), "approved") > 1 Then
  'your code if approved
Else
  'your code if not
End If

您可以查看“GetResponseText”字符串并搜索“> approved<”或类似的东西