Registriert seit: 24.04.2014
Hallo zusammen,
ich würde gerne folgendes machen:
Ich habe eine Liste in der Postzeitzahlen stehen. In Google Maps kann man diese eingeben:
https://www.google.at/maps/place/1020 Sobald der Browser dann die Seite geladen hat steht die URL wie folgt da:
https://www.google.at/maps/place/1020+Wi...940e?hl=de Ich würde nun gerne mittels einer Schleife diese Abfragen durchführen und dieses Ergebnis, also die URL mit den Koordinaten in die Zelle neben der PLZ schreiben...
Ich habe einmal ein paar Schnipsel gefunden und damit herumgebastelt, aber leider funktioniert es noch nicht wie gewünscht. Ich hoffe jemand kann mir weiterhelfen?
Vielen Dank und lg
Olli
Angehängte Dateien
Google Gebiete PLZ.xlsm (Größe: 28,02 KB / Downloads: 4)
WIN 10 64-Bit Pro / EXCEL Microsoft Office 365 ProPlus 64-Bit
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo olli,
wenn Du die url erst einer Variable zuweist und dann einträgst, hast Du die komplette Url.
Code:
strUrl = oWindow.LocationURL Cells(loi, 4) = strUrl
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 14.04.2014
05.12.2014, 16:47
(Dieser Beitrag wurde zuletzt bearbeitet: 05.12.2014, 16:47 von bst .)
Auch Hallo,
so wie ich das verstehe erlaubt Google Map es nicht von dort automatisiert Daten zu ziehen ohne das in einer Karte anzuzeigen. Siehe:
https://developers.google.com/maps/docum...ncematrix/ Ich würde das deshalb vielleicht eher über GeoNames machen, siehe:
http://de.wikipedia.org/wiki/GeoNames Du musst Dir dazu bei
http://www.geonames.org/ einen Account zulegen und den UserNamen in der URL angeben, so in der Art:
strUrl = "http://api.geonames.org/postalCodeLookupJSON?postalcode=1020&country=AT&username=DEINNAME"
Das Ergebnis sieht dann (Beispiel für 6060) so aus:
Zitat: {"postalcodes":[{"adminCode2":"703","adminCode3":"70301","adminName3":"Absam","adminCode1":"07","adminName2":"Politischer Bezirk Innsbruck Land","lng":11.5,"countryCode":"AT","postalcode":"6060","adminName1":"Tirol","placeName":"Absam","lat":47.3},{"adminCode2":"703","adminCode3":"70354","adminName3":"Hall in Tirol","adminCode1":"07","adminName2":"Politischer Bezirk Innsbruck Land","lng":11.5166667,"countryCode":"AT","postalcode":"6060","adminName1":"Tirol","placeName":"Hall in Tirol","lat":47.2833333},{"adminCode2":"703","adminCode3":"70354","adminName3":"Hall in Tirol","adminCode1":"07","adminName2":"Politischer Bezirk Innsbruck Land","lng":11.494444466666666,"countryCode":"AT","postalcode":"6060","adminName1":"Tirol","placeName":"Heiligkreuz","lat":47.29444443333333},{"adminCode2":"703","adminCode3":"70358","adminName3":"Thaur","adminCode1":"07","adminName2":"Politischer Bezirk Innsbruck Land","lng":11.4666667,"countryCode":"AT","postalcode":"6060","adminName1":"Tirol","placeName":"Thaur","lat":47.3}]}cu, Bernd
--
Code:
Option Explicit Sub URL_zu_PLZ() Dim i As Long, objHTTP, strUrl As String Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1") objHTTP.SetTimeouts 0, 3000, 2000, 5000 For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row strUrl = "http://api.geonames.org/postalCodeLookupJSON?postalcode=" & Cells(i, 1).Value & "&country=AT&username=DEINNAME" objHTTP.Open "GET", strUrl, False objHTTP.Send Cells(i, 4).Value = objHTTP.ResponseText Next Set objHTTP = Nothing End Sub
Registriert seit: 24.04.2014
Hallo André,
habe das leider nicht geschafft entsprechend einzubauen, kannst du mir sagen wo das hin müsste?
Wie erwähnt möchte ich gerne, dass das Makro die Liste abarbeitet und dann diese URL eingibt:
https://www.google.at/maps/place/6020 Sobald die URL im Browser vollständig geladen ist wird die so dargestellt:
https://www.google.at/maps/place/6020/@4...dac305e70b Dieses Ergebnis würde ich dann gerne auslesen und neben der PLZ darstellen.
Es geht mir dabei um den dargestellten Shape auf der Karte, also die Ortsgrenzen.
Aktuell erhalte ich leider immer nur
https://www.google.at/maps/place/6020 zurück.
@bst: Danke für den Tipp, das kann ich bei einem anderen Projekt super gebrauchen, werde ich auf jeden Fall einmal entsprechend testen.
Danke und lg
Olli
WIN 10 64-Bit Pro / EXCEL Microsoft Office 365 ProPlus 64-Bit