Code, um GPS Koordinaten aus Adresse (VB6/VBA/VBScript)
Glaube ich, dass die Google-API ermöglicht es Ihnen, die Koordinaten für eine Adresse. Jedoch die meisten (oder sollte ich sagen alle) die Beispiele, die ich gefunden habe sind nicht für vb. In der Regel ist es eine javascript-Beispiel, das gerade lässt mich verwirrt.
Hier einige Codes die ich verwendet, die eine geocoding-service. Dies funktioniert Super. Es ist nur so, dass ich Abfragen Google Maps direkt mich.
Public Function fgGetLatAndLongUsingAddress(sAddress As String) As String
'This function works best with a complete address including the zip code
Dim sResponseText As String, sReturn As String
sReturn = "none"
Dim objHttp As Object, sQuery As String
sQuery = "http://rpc.geocoder.us/service/csv?address=" & Replace(sAddress, " ", "+")
Set objHttp = CreateObject("Msxml2.ServerXMLHTTP")
objHttp.Open "GET", sQuery, False
objHttp.send
sResponseText = objHttp.ResponseText
gsLastLatLongResponseText = sResponseText
Set objHttp = Nothing
If Len(sResponseText) > 0 Then
If InStr(sResponseText, "Bad Request") > 0 Then
'Do Nothing
ElseIf InStr(sResponseText, "couldn't find this address") > 0 Then
'Do Nothing
Else
If InStr(sResponseText, vbCrLf) > 0 Then
'We got more than one result
End If
If InStr(sResponseText, ",") > 0 Then
Dim aryInfo() As String
aryInfo = Split(sResponseText, ",")
sReturn = aryInfo(0) & "," & aryInfo(1)
End If
End If
End If
fgGetLatAndLongUsingAddress = sReturn
End Function
InformationsquelleAutor HK1 | 2010-11-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dieser sollte den job tun. Müssen Sie fügen Sie einen Verweis auf die MSXML6-Bibliothek (Microsoft XML, v6.0) über Extras > Verweise in Excel
Der einzige wirkliche Unterschied zu Ihrem Beispiel:
Offensichtlich gibt es keine Fehlerbehandlung auch immer in meinem code, aber es sollte Ihnen eine Idee geben, was Sie brauchen, um die API verwenden. Wollen Sie auf jeden Fall konsultieren Sie die API-Dokumentation sich selbst herausfinden, über rate limiting etc
InformationsquelleAutor barrowc
Danke für den code! Es funktioniert Super. Vielen Dank für das heads-up auf die Begrenzung der Datenübertragungsrate. Hier ist, was Google zu sagen hat:
Die Verwendung des Google Geocoding API unterliegt einer Abfrage limit von 2.500 geolocation-Anfragen pro Tag. (Nutzer von Google Maps API Premier können Sie bis zu 100.000 Anfragen pro Tag.) Diese Grenze wird erzwungen, um zu verhindern, dass Missbrauch und/oder Zweckentfremdung des Geocoding-API, und dieses limit kann in Zukunft geändert werden ohne Vorankündigung. Darüber hinaus setzen wir einen Wunsch-rate begrenzen, um zu verhindern, dass der Missbrauch des Services. Überschreiten Sie die 24-Stunden-Grenze oder anderweitig Missbrauch des service, der Geocoding-API kann aufhören zu arbeiten für Sie vorübergehend. Wenn Sie weiterhin diese Grenze überschreiten, wird Ihr Zugriff auf das Geocoding API gesperrt werden kann.
Hinweis: das Geocoding API darf nur in Verbindung mit einer Google-map; geocoding-Ergebnisse ohne die Darstellung auf einer Karte ist verboten. Für vollständige Angaben über zulässige Verwendung, konsultieren Sie die Google Maps API Terms of Service-Lizenz-Beschränkungen.
InformationsquelleAutor HK1