Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Entfernung mit Google Maps berechnen

Entfernung mit Google Maps berechnen
24.03.2015 16:11:47
Doliwa
Meine vorerst letzte VBA Aufgabe. Aus meiner Excel-Tabelle sollen der Startpunkt und der Zielpunkt an Maps übergeben werden und dort die Distanz ermittelt werden. Ich habe mittlerweile auch die Information, daß man die Werte nicht dauerhaft von Maps in Excel übertragen kann, weshalb ich die KM manuell übertragen möchte. Da ich aber bis zu 7 Strecken in einer Liste habe, sollten diese eine nach der anderen abgearbeitet werden. Wer kann mir hier wertvolle Ratschläge geben?
Meine jetzige Programmierung funktioniert nicht wirklich.
Sub Maps()
Set IEApp = CreateObject("InternetExplorer.Application")
IEApp.Visible = False
IEApp.Navigate "http://maps.google.com/maps?saddr=" & Sheets("Berechnung").Range("C3") & "& _
daddr=" & Sheets("Berechnung").Range("M13") & "&hl=de"
Do: Loop Until IEApp.Busy = False
Set IEDocument = IEApp.Document
Set IEDoc = IEApp.Document
strTeile = Split(IEDoc.Body.innerText, vbCrLf)
'Debug.Print IEDoc.Body.innerText
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Warum nicht Berechnung innerhalb XL?
25.03.2015 12:42:12
Frank
Hallo,
da würde mich doch mal interessieren, warum Du den Umweg über GM nimmst.
Berechnung der Luftlinie zwischen zwei Orten mittels WGS-Koordinaten:
- Differenz der Längen, Differenz der Breiten (dL, dB)
- Berechnung der Bogenlänge in Grad (360°) mittels Pythagoras BL(360°)=Wurzel(dL*dL+dB*dB)
- Berechnung der Länge des Kreisbogens auf der Erdkugel (mittlerer Radius=6371km) LKB=PI()*6371*BL/180
Das ist natürlich auch eine Frage, wie genau man das braucht, aber bei GM weiss man ja auch nicht, welche Paramater da genau verwendet werden und inwiefern evtl Geoid-Daten einbezogen werden.
Grüsse,
Frank
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Entfernung mit Google Maps berechnen in Excel


Schritt-für-Schritt-Anleitung

Um die Entfernung zwischen zwei Orten in Excel mithilfe von Google Maps zu berechnen, kannst Du die folgende VBA-Prozedur verwenden. Diese Prozedur öffnet Google Maps und übergibt Start- und Zielort, um die Distanz zu ermitteln.

  1. Öffne Excel und gehe zum Reiter „Entwicklertools“.
  2. Klicke auf „Visual Basic“, um den VBA-Editor zu öffnen.
  3. Füge ein neues Modul hinzu und kopiere den folgenden Code:
Sub Maps()
    Set IEApp = CreateObject("InternetExplorer.Application")
    IEApp.Visible = False
    IEApp.Navigate "http://maps.google.com/maps?saddr=" & Sheets("Berechnung").Range("C3") & "&daddr=" & Sheets("Berechnung").Range("M13") & "&hl=de"
    Do: Loop Until IEApp.Busy = False
    Set IEDocument = IEApp.Document
    strTeile = Split(IEDocument.Body.innerText, vbCrLf)
    ' Hier kannst Du die Rückgabe der Distanz weiterverarbeiten
End Sub
  1. Stelle sicher, dass die Zellen C3 und M13 die Start- und Zielorte enthalten.
  2. Führe das Makro aus, um die Entfernungen zu berechnen.

Häufige Fehler und Lösungen

  • Problem: Das Makro funktioniert nicht.

    • Lösung: Stelle sicher, dass Du die richtigen Zellreferenzen verwendest und die Internetverbindung aktiv ist.
  • Problem: Die Entfernung wird nicht korrekt angezeigt.

    • Lösung: Überprüfe die Formatierung und stelle sicher, dass die Orte korrekt eingegeben sind.
  • Problem: Fehlermeldung beim Zugriff auf Google Maps.

    • Lösung: Möglicherweise blockiert Deine Firewall oder Sicherheitssoftware den Zugriff. Überprüfe die Einstellungen.

Alternative Methoden

Wenn Du keine VBA nutzen möchtest, kannst Du auch die Google Maps API verwenden. Hierbei erstellst Du eine API-Anfrage, um die Entfernung zwischen zwei Orten zu berechnen.

  1. Melde Dich bei Google Cloud an und aktiviere die Google Maps API.
  2. Erstelle einen API-Schlüssel.
  3. Verwende eine Formel in Excel, um die API zu kontaktieren und die Entfernung abzurufen.

Ein Beispiel für eine API-Anfrage könnte so aussehen:

=WEBSERVICE("https://maps.googleapis.com/maps/api/distancematrix/json?origins=" & A1 & "&destinations=" & B1 & "&key=DEIN_API_KEY")

Ersetze A1 und B1 durch die entsprechenden Zellen mit den Orten.


Praktische Beispiele

Hier sind einige Beispiele, wie Du Entfernung zwischen zwei Orten berechnen kannst:

  • Beispiel 1: Berechnung der Entfernung zwischen „Berlin“ und „München“.
  • Beispiel 2: Berechnung der Strecke zwischen „Hamburg“ und „Frankfurt“.

In der Tabelle könntest Du die Start- und Zielorte in Spalte A und B setzen und die entsprechenden Distanzen mit der oben genannten VBA-Prozedur oder API-Berechnung abfragen.


Tipps für Profis

  • Nutze die WEBSERVICE-Funktion in Kombination mit der Google Maps API für eine automatisierte Lösung ohne VBA.
  • Achte darauf, dass Du die API-Anfragen limitierst, um zusätzliche Kosten zu vermeiden.
  • Experimentiere mit den Optionen in Google Maps, um die beste Route zu finden und Zeit zu sparen.

FAQ: Häufige Fragen

1. Wie kann ich die Entfernung zwischen zwei Orten in Excel berechnen, ohne VBA zu verwenden?
Du kannst die Google Maps API mit der WEBSERVICE-Funktion verwenden, um die Distanz direkt in Excel abzurufen.

2. Gibt es eine Möglichkeit, die Entfernung zwischen mehreren Orten gleichzeitig zu berechnen?
Ja, Du kannst eine Schleife in VBA erstellen, um mehrere Abfragen nacheinander auszuführen oder mehrere API-Anfragen in einer Formel zusammenfassen.

3. Wie genau sind die Entfernungen, die von Google Maps bereitgestellt werden?
Die Entfernungen sind in der Regel sehr genau, da sie auf den aktuellen Verkehrsdaten und Straßenkarten basieren. Achte jedoch darauf, dass sie je nach Route variieren können.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige