2016-08-02 44 views
1

这是我的项目: 1.我有一个电子表格,其中包含特定列中的零件/型号 2.我希望对每个零件号码和单词“price”执行Google搜索, 3.从最初的Google搜索结果中,我想对美国货币价格执行正则表达式搜索,并用每个零件号的平均返回价格填充单独列,并排除所有其他html。 html定价数据不一定在表格中。Excel VBA网络价格数据采集

我对Excel非常熟悉,并且对VBA有一定的了解。我已经能够编写大部分上述项目,但是我在从网页中提取正则表达式匹配时遇到了一些困难。任何建议,将不胜感激。

+0

你尝试过什么到目前为止?你能发布代码吗? –

回答

0

请参阅以下内容:

Sub Test() 

    Dim IE As Object 
    Dim reg As New RegExp 
    reg.Pattern = "\$\d+.?\d?\d?" 

    Sheets("Sheet3").Select 
    Range("A1:A1000") = "" ' erase previous data 
    Range("A1").Select 

    Set IE = CreateObject("InternetExplorer.Application") 

    IE.Visible = True 
    'IE.Navigate "https://www.google.com/" ' should work for any URL 
    IE.Navigate "https://www.google.com/?_rd=ssl#q=" & "DNR-12-1-G Price" 
    Do While IE.Busy = True Or IE.readyState <> 4: DoEvents: Loop 
    'IE.Document.getElementById("lst-ib").Value = "DNR-12 Price" 

    'Do While IE.Busy = True Or IE.readyState <> 4: DoEvents: Loop 

    'SendKeys ("{ENTER}") 

    IE.ExecWB 17, 0 '// SelectAll 
    IE.ExecWB 12, 2 '// Copy selection 
    ActiveSheet.PasteSpecial Format:="Text", link:=False, DisplayAsIcon:=False 
    Range("A1").Select 
    Selection.SpecialCells(xlCellTypeBlanks).Select 
    Selection.Delete Shift:=xlUp 
    'MsgBox (Continue) 
    IE.Quit 

End Sub