title: Download eBay shipping charges through Excel 2010 VBA
body: <p>I am trying to download non-free shipping charges from eBay.  I have the item numbers of the pages.  The links should go to the right pages on eBay.</p>
  
  <p>While trying to go to the page and download the data, Excel hangs.</p>
  
  <p>I have similar working code that gets the eBay item numbers on many pages from eBay.</p>
  
  <p>If this code can't be fixed how can I get the info I need into Excel? </p>
  
  <pre><code>        itemNumberAlone = Range("a" &amp; eachItem).Value
          With ActiveSheet.QueryTables.Add(Connection:= _
            "URL;http://www.ebay.com/itm/" &amp; itemNumberAlone &amp; "?ru=http%3A%2F%2Fwww.ebay.com%2Fsch%2Fi.html%3F_from%3DR40%26_sacat%3D0%26_nkw%3D" &amp; itemNumberAlone &amp; "%26_rdc%3D1" _
            , Destination:=Range("$bZ$1"))
              .Name = "second ebay links"
              .FieldNames = True
              .RowNumbers = False
              .FillAdjacentFormulas = False
              .PreserveFormatting = True
              .RefreshOnFileOpen = True
              .BackgroundQuery = True
              .RefreshStyle = xlOverwriteCells
              .SavePassword = False
              .SaveData = True
              .AdjustColumnWidth = True
              .RefreshPeriod = 0
              .WebSelectionType = xlEntirePage
              .WebFormatting = xlWebFormattingNone
              .WebPreFormattedTextToColumns = True
              .WebConsecutiveDelimitersAsOne = True
              .WebSingleBlockTextImport = False
              .WebDisableDateRecognition = False
              .WebDisableRedirections = False
              .Refresh BackgroundQuery:=False
          End With
  
          Do While Not IsError(Application.Match("Shipping and handling", Range("bz1:bz1000"), 0))
              If IsError(Application.Match("Shipping and handling", Range("bz1:bz1000"), 0)) Then Exit Do
              If Not IsError(Application.Match("Shipping and handling", Range("bz1:bz1000"), 0)) Then
                  shippingRow = Application.Match("Shipping and handling", Range("bz1:bz1000"), 0) + 1
                  shippingCell = Range("bz" &amp; shippingRow).Value
                  If Left(shippingCell, 2) &lt;&gt; "US" Then
                      Range("bz" &amp; shippingRow - 1).ClearContents
                  Else
                      Range("c" &amp; eachItem).Value = Right(shippingCell, Len(shippingCell) - 2)
                  End If
              End If
          Loop
  
      End If
  
  Next
  </code></pre>