Objetivo: Importar dados de uma consulta XML no Excel.
Para criar uma consulta XML clique em Dados -> Da Web e digite o endereço da consulta, como por exemplo: https://maps.google.com/maps/api/geocode/xml?address=Rui+Barbosa+1300,Joinville,SC&sensor=false.
Abaixo o código VBA que cria uma consulta XML para o Google Maps, trazendo informações como o endereço completo, latitude, longitude, etc.
O botão da planilha está associado a este código VBA, que exclui a consulta anterior e cria uma nova consulta com os dados fornecidos nas células de B1 á B5, a célula B6 relacionada ao CEP é preenchida automaticamente.
Sub lsCriaConexaoXML()
Dim lDados As String
Dim iTotalLinhas As Integer
Selection.End(xlDown).Select
iTotalLinhas = Cells(Rows.Count, 1).End(xlUp).Row
If ActiveWorkbook.Connections.Count > 0 Then
ActiveWorkbook.Connections(1).Delete
End If
lDados = Range("B1").Value & "+" & Range("B2").Value & "," & Range("B3").Value & "," & Range("B4").Value & "," & Range("B5").Value
Rows("9:30").Select
Selection.Delete Shift:=xlUp
ActiveWorkbook.XmlImport URL:= _
"https://maps.google.com/maps/api/geocode/xml?address=" & lDados & "&sensor=false" _
, ImportMap:=Nothing, Overwrite:=True, Destination:=Range("$A$9")
Range("B6").Value = Range("D" & iTotalLinhas).Value
End Sub
Abraço
Marcos Rieper