GPS-Daten in Ecxel importieren

Hallo,

ich habe eine Exceltabelle erstellt, mit Ortsname, Straße, Gemeinde und Landkreis. Jetzt bräuchte ich, für jede Straße die entsprechnden GPS-Daten (LON/LAT) in der Excel-Datei. (Klar kann man es bei google-maps alles einzeln suchen, aber bei mehreren 100 Straßen ist es ganz schön zeitaufwendig.)
Hat jemand eine Idee oder schon sowas mal programmiert?

Danke!

Hi,

hier handelt es sich wohl weniger um ein Excel Problem, da du offenbar auf der Suche nach einer Datenquelle bist.

Soweit ich weiß ist es nicht erlaubt, bei google automatisiert Koordinaten abzugreifen. Bevor du das machst, solltest du besser dort in den Nutzungsbedingugen nachlesen.

Du könntest mal bei openstreetmap.org suchen, ob du dort was passendes findest.

Hi,

leider nicht mit Strassen. Aber mit Orten, nach Gemeinde und Landkreis, dazu brauchst du die Datei mondial.xml oder mondial-europe.xml http://www.dbis.informatik.uni-goettingen.de/Mondial/, dann schreibst du dir eine xsl und generierst daraus was du brauchst und speicherst das als html, dann musst du nur noch die html in csv übersetzen > http://www.cs.iupui.edu/~aharris/H2Text.html">
die csv kannst du dann in excel importieren. So würde ich vorgehen, aber vielleicht hat jemand noch eine bessere Idee.

Gruß

Hallo Power,

hier handelt es sich wohl weniger um ein Excel Problem, da du
offenbar auf der Suche nach einer Datenquelle bist.

so wie ich es verstehe ist es schon ein Excelproblem. Das Auslesen einer interaktiven Datenquelle. Also ein Makrocode, der zu google-map geht, dort dann nacheinander 100 datensätze eingibt, dieses dort absendet, die Ergebnisse ausliest, dann der nächste datensatz.

Bei google.de habe ich mir sowas schon mal gebastelt. Es geht also mit VBa.
Das liegt aber auch an der Programmierung der jeweiligen Seite, bei manchen ging es auf die Art nicht.
Ich schaue mal ob ich den noch habe, vielleicht kann ich den umbasteln. Kann aber leider gut sein daß er auf zwei defekten Festplatten ist.

Soweit ich weiß ist es nicht erlaubt, bei google automatisiert
Koordinaten abzugreifen. Bevor du das machst, solltest du
besser dort in den Nutzungsbedingugen nachlesen.

Das ist doch OT, hat mit Excel nix zu tun *schwergrins*

Gruß
Reinhard

Das wäre ja klasse! Danke für deine Bemühungen…

Das wäre ja klasse! Danke für deine Bemühungen…

Hallo Lietz,

ich habe da ein Startproblem. Mit
http://www.google.de/#num=100&hl=de&q=google-maps+LO…
finde ich zwar vieeeel, aber eine Seite wo ich PLZ Ort strasse HNr eingeben kann bislang nicht.

Gruß
Reinhard

http://maps.google.com/maps/geo?q=Stachus,Muenchen,M…

Meinst du sowas?

http://maps.google.com/maps/geo?q=STRASSE,ORT,GEMIND…

http://maps.google.com/maps/geo?q=Stachus,Muenchen,M…

Meinst du sowas?

http://maps.google.com/maps/geo?q=STRASSE,ORT,GEMIND…

Hallo Lietz,

da ist nix von Ort, Straße usw. zu entdecken.

So wie du es geschriebn ahst nahm ich an, es gab da eine Seite wo du PLZ ort Straße usw manuell eingeben kannst, dort dann was klickst und dir wird dann lat long angezeigt.

Was ich bislang fand waren Siten da konnte man PLz oder Ortsname eingeben, dann ercheint ein Plan der Stadt, wenn man dann im Plan auf einen Punkt klickt erscheinen in zwei Textboxen Lat und Long.
Aber das hilft nicht weiter, entweder gar nicht mit Vba nachzustellen oder nur mit WahnsinnsVba nachzustellen.

Gruß
Reinhard

Hallo Reinhard,

also ich habe ein Excel Datei in der steht,

Ort Strasse Gemeinde …
München Stachus München
etwa so…

jetzt möchte ich für diese Straße die LON/LAT ermitteln.

http://www.getlatlon.com/

Wenn man hier in die Suche „Stachus, München, München“ eingibt, sieht man darunter die LON/LAT. Diese Zahlen wollte ich in meine Exceltabelle exportieren.

jetzt möchte ich für diese Straße die LON/LAT ermitteln.

http://www.getlatlon.com/

Wenn man hier in die Suche „Stachus, München, München“
eingibt, sieht man darunter die LON/LAT. Diese Zahlen wollte
ich in meine Exceltabelle exportieren.

Hallo Lietz,

ich habe es versucht, manuell klappt das.
Aber wenn ich mit Excel-Vba die Seite aufrufe habe ich einen anderen Quelltext vor mir als beim manuellen Aufruf.

Da weiß ich jetzt nicht warum.

Konkret es darum, ich kann kein Html, in der manuell aufgerufenen Seite ist diese Code im Quellcode:

var geocodeForm = document.getElementById(‚geocodeForm‘);
geocodeForm.onsubmit = function() {
geocode(document.getElementById(‚geocodeInput‘).value);
return false;

Den deute ich so, daß das Textfeld in dem man die Daten einträgt den Namen „geocodeInput“ hat. onsubmit oder submit entspricht dem was aufgerufen wird wenn man nach der Dateneingabe auf den Button klickt.
Mit Vba kann ich das ggfs. nachstellen, also die Texteingabe und das Klicken/Ansenden, aber natürlich nur bei der manuell augerufenen Seite.

Bei der Seite die ich per Vba aufrufe steht das Obige nicht drin, also kann ich da bislang nix machen:frowning:

Gruß
Reinhard

Excel Vba Lösung Google Maps

Ort Strasse Gemeinde …
München Stachus München
etwa so…
jetzt möchte ich für diese Straße die LON/LAT ermitteln.

http://www.getlatlon.com/

Hallo Lietz,

teste mal aus was da die Seite als Trennzeichen akzeptiert.
Also ob
Frankfurt Müllerstraße 45
oder auch
Frankfurt, Müllerstraße 45
funktioniert.

Und, wegen Frankfurt/Oder ist ssicher die PLZ notwendig beim oder anstelle des Ortes.

Angenommen, lassen wir jetzt mal eine Überschriftszeile weg, deine Daten stehen in den Spalten A,B,C,D
Dann schreibe in E1
=A1&" „&B1&“ „&C1&“ „&D1
bzw.
=A1&“,"&B1&","&C1&","&D1

Dann lass das Makro ausführen, es füllt dann F und G mit Lat und Long.

Zum Makrocode selbst, im VB-Editor funktioniert er seltsam, er bleibt hängen bis man die linke Maustaste drückt.
Egal.

Alt+F11, Einfügen Modul, Code dort reinkopieren, VB-Editor schließen.
In Excel kannste z.B. über Alt-F8 das Makro „GoogleMaps“ ausführen lassen.
Oder ihn einem Schaltflächenelement aus Symbolleiste „Formular“ zuweisen.

Danke an Anton für den letzten Schritt im Code.

Gruß
Reinhard

Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
'
Sub GoogleMaps()
Dim IEApp As Object, IEDocument As Object, Zei As Long
Dim wks As Worksheet
Set wks = Worksheets("Tabelle1")
Set IEApp = CreateObject("InternetExplorer.Application")
IEApp.Visible = False
IEApp.Navigate "http://www.getlatlon.com/"
Do: Loop Until IEApp.Busy = False
Do: Loop Until IEApp.Busy = False
Set IEDocument = IEApp.Document
Do: Loop Until IEDocument.ReadyState = "complete"
For Zei = 1 To wks.Cells(Rows.Count, 5).End(xlUp).Row
 IEDocument.getElementById("geocodeInput").Value = wks.Cells(Zei, 5)
 IEDocument.getElementById("geocodeForm").onsubmit
 Sleep 500
 Do: Loop Until IEApp.Document.ReadyState = "complete"
 With IEApp.Document.getElementById("latlon")
 wks.Cells(Zei, 6).Value = Split(.innertext, ",")(0)
 wks.Cells(Zei, 7).Value = Mid(Split(.innertext, ",")(1), 2)
 End With
Next Zei
IEApp.Quit
Set IEDocument = Nothing
Set IEApp = Nothing
End Sub