HTML Code:Option Explicit Sub lm_GetGooleFirstSearchAddres() Dim strHtml As String Dim lngLoop As Long Dim rngRange As Range Dim rngCell As Range With ThisWorkbook.Worksheets("Sheet1") Set rngCell = .Range("A1").CurrentRegion.Resize(, 1) Set rngRange = Nothing On Error Resume Next Set rngRange = Intersect(rngCell, rngCell.Offset(1)) On Error GoTo -1: On Error GoTo 0: Err.Clear If Not rngRange Is Nothing Then For Each rngCell In rngRange With CreateObject("MSXML2.XMLHTTP") .Open "get", URLEncode(rngCell.Value), False .send strHtml = .responseText strHtml = Mid(strHtml, InStr(1, strHtml, "<div id=""ires"">")) strHtml = Mid(strHtml, 1, InStr(1, strHtml, "<div class=""s"">")) strHtml = Mid(strHtml, InStr(1, strHtml, "<a href=")) strHtml = Mid(strHtml, InStr(1, strHtml, "<a href="), InStr(1, strHtml, """ onmousedown=""")) strHtml = Mid(strHtml, InStr(1, strHtml, """"), Len(strHtml) - 1) rngCell.Offset(, 1).Value = Mid(Trim(strHtml), 2, Len(Trim(strHtml)) - 2) End With Next rngCell MsgBox "Search completed.", vbInformation, "Google Search..." Else MsgBox "No data found to search.", vbCritical, "Google Search..." End If End With strHtml = vbNullString lngLoop = Empty Set rngRange = Nothing Set rngCell = Nothing End Sub Function URLEncode(EncodeStr As String) As String Dim i As Integer Dim erg As String Const strGogSrchUrl As String = " http://www.google.co.in/search?output=search&sclient=psy-ab&q=|||&btnK=" Const strConcatDelima As String = "|||" erg = EncodeStr ' *** First replace '%' chr erg = Replace(erg, "%", Chr(1)) ' *** then '+' chr erg = Replace(erg, "+", Chr(2)) For i = 0 To 255 Select Case i ' *** Allowed 'regular' characters Case 37, 43, 48 To 57, 65 To 90, 97 To 122 Case 1 ' *** Replace original % erg = Replace(erg, Chr(i), "%25") Case 2 ' *** Replace original + erg = Replace(erg, Chr(i), "%2B") Case 32 erg = Replace(erg, Chr(i), "+") Case 3 To 15 erg = Replace(erg, Chr(i), "%0" & Hex(i)) Case Else erg = Replace(erg, Chr(i), "%" & Hex(i)) End Select Next URLEncode = Replace(strGogSrchUrl, strConcatDelima, erg) 'URLEncode = strGogSrchUrl & erg i = Empty erg = vbNullString End Function
Bookmarks