2016-05-05 9 views
0

Ich habe eine Lookup-Funktion in Excel (2010), die auf Google verweist, um Postleitzahlen zu erhalten. Ich habe einige Zellen mit Formeln, um die XML-Daten aus der Ferne zu finden: Ich habe eine Zelle namens ZipCode. Der folgende Code aktualisiert Stadt und Bundesstaat anhand einer neu eingegebenen Postleitzahl. HierMap.DataBinding.LoadSettings funktioniert nicht für HTTPS

ist der Code:

Private Sub Worksheet_Change(ByVal Target As Range) 

    If Target.Row = [ZipCode].Row And Target.Column = [ZipCode].Column Then 
    Dim Zip As String: Zip = [ZipCode].Value 

    If Len(Zip) <> 5 Or Not IsNumeric(Zip) Then 
     MsgBox "Please enter a valid zip code!", vbCritical, "Invalid Zip" 
     Exit Sub 
    End If 

    Dim Map As XmlMap 
    Set Map = ActiveWorkbook.XmlMaps(1) 
    Map.DataBinding.LoadSettings "https://maps.googleapis.com/maps/api/geocode/xml/?address=" & Zip & "&sensor=false" 
    Map.DataBinding.Refresh 
    End If 

End Sub 

Die Routine versagt bei:
Map.DataBinding.LoadSettings "https://maps.googleapis.com/maps/api/geocode/xml/?address=" & Zip & "&sensor=false"

mit folgendem Laufzeitfehler

Laufzeitfehler -214.721.376 (80041020) Das System konnte nicht Lokalisieren Sie das angegebene Objekt.

Ich habe nicht viel Glück zu verstehen, warum es versagt. Jede Hilfe wäre willkommen.

Antwort

0

Die URL ist falsch:

https://maps.googleapis.com/maps/api/geocode/xml/?address= 

Die URL sollte:

https://maps.googleapis.com/maps/api/geocode/xml?address= 

(auch der Sensor-Parameter ist nicht mehr erforderlich)

0

Ich bin kein Experte ... aber ich kenne das Video, das du gerade siehst, und ich habe diesen Fehler erhalten. Sie geben nicht an, die richtige XML-Quelle zu überlisten. Ihr Code ist perfekt, wie pro das Video, aber meine Vermutung ist, dass Sie hier vermasselt:

Set Map = ActiveWorkbook.XmlMaps(1)

Dies ist nicht auf die richtige xmlmap beziehen werden. Ich würde vorschlagen, die Quelldateien zu löschen und die XML-Map erneut zu laden.