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

Forumthread: Entfernung zwischen zwei Adressen ermitteln

Entfernung zwischen zwei Adressen ermitteln
Martin
Hallo Profis,
mir liegt eine Excel-Tabelle mit mehreren Tausend Kontaktdaten von Kunden vor. In jedem Fall habe ich von allen Kontaktdaten die Postleitzahl und den Ort (in Spalte H: "D-85221 Dachau") vorliegen, meist auch die Straße und Hausnummer (in Spalte G: "Musterweg 25"). Gibt es eine Möglichkeit per VBA in Spalte N nun die Entfernung zu einer von uns festgelegten Adresse (zum Beispiel über das Internet via Google Maps oder Maps24) automatisch ermitteln zu lassen?
Viele Grüße
Martin
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Dazu wären die Koordinaten der Orte notwendig
24.01.2011 12:44:00
Martin
Hallo WF,
leider liegen mir die Längen- und Breitengrade der Orte nicht vor, sondern nur die Postleitzahlen (meist auch Straßennamen). Vielen Dank für deine Antwort, aber dieser Ansatz wird mir vermutlich nicht weiterhelfen.
Viele Grüße
Martin
Anzeige
AW: Dazu wären die Koordinaten der Orte notwendig
24.01.2011 13:47:06
ing.grohn
Hallo Martin,
die beiden Modelle zur Entfernungsermittlung zwischen 2 Orten
aus Excelformeln (klasse Seite) funktionieren gut!
Kannst Du die Koorddinaten nicht mit Googlemaps über die PLZ ermitteln?
Mit freundlichen Grüßen
Albrecht
Liefert Fahrtzeit statt Streckenlänge
24.01.2011 14:59:10
Martin
Hallo Kawensmann,
der Aufbau des Makros gefällt mir schon ganz gut, inbesondere da die Angabe der Straße nicht unbedingt sein muss (also die PLZ ausreichen würde, wenn mir der Straßenname nicht vorliegt). Aber leider liefert das Makro nicht die Streckenlänge, sondern nur die Fahrtzeit.
Viele Grüße
Martin
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Entfernung zwischen zwei Adressen ermitteln in Excel


Schritt-für-Schritt-Anleitung

  1. Daten vorbereiten: Stelle sicher, dass du in deiner Excel-Tabelle die Postleitzahlen und Orte der Adressen hast. Diese sollten in Spalte H stehen, z.B. "D-85221 Dachau".

  2. Google Maps API verwenden: Du kannst die Google Maps API nutzen, um die Entfernung zwischen zwei Adressen zu berechnen. Registriere dich auf der Google Cloud Plattform und aktiviere die Google Maps Distance Matrix API.

  3. VBA-Code einfügen: Öffne den VBA-Editor in Excel (ALT + F11) und füge den folgenden Code ein, um die Entfernung zwischen zwei Adressen zu berechnen:

    Function GetDistance(address1 As String, address2 As String) As Double
        Dim http As Object
        Dim response As String
        Dim json As Object
    
        Set http = CreateObject("MSXML2.XMLHTTP")
        http.Open "GET", "https://maps.googleapis.com/maps/api/distancematrix/json?origins=" & address1 & "&destinations=" & address2 & "&key=DEIN_API_SCHLÜSSEL", False
        http.send
        response = http.responseText
    
        Set json = JsonConverter.ParseJson(response)
        GetDistance = json("rows")(1)("elements")(1)("distance")("value") / 1000 ' in km
    End Function
  4. Entfernung in Excel berechnen: Verwende die Funktion in einer Zelle, um die Entfernung zu berechnen. Zum Beispiel:

    =GetDistance(H2, "DEINE_ADRESSE")
  5. Ergebnisse überprüfen: Achte darauf, dass der API-Schlüssel korrekt ist und die API aktiviert wurde.


Häufige Fehler und Lösungen

  • Fehler 403 - Zugriff verweigert: Überprüfe, ob dein API-Schlüssel aktiviert ist und die richtigen Berechtigungen hat.

  • Keine Ergebnisse: Stelle sicher, dass die eingegebenen Adressen korrekt sind. Manchmal kann ein einfacher Tippfehler die Ergebnisse beeinflussen.

  • Falsche Entfernungen: Dies kann an der API-Konfiguration liegen. Überprüfe, ob du die richtige URL und Parameter verwendest.


Alternative Methoden

  • Entfernung zwischen zwei PLZ berechnen in Excel: Statt Google Maps kannst du auch eine Tabelle mit den Entfernungen zwischen den Postleitzahlen nutzen. Diese Tabelle kannst du selbst erstellen oder im Internet finden.

  • Excel Add-Ins: Es gibt verschiedene Excel-Add-Ins, die dir helfen können, Entfernungen zwischen Adressen zu berechnen, ohne dass du selbst Programmieren musst.


Praktische Beispiele

  1. Entfernung zwischen zwei Städten: Verwende die Funktion GetDistance mit zwei Städten als Parameter, z.B. =GetDistance("München", "Berlin").

  2. PLZ Entfernung berechnen: Nutze die Funktion mit Postleitzahlen, z.B. =GetDistance("80331 München", "10115 Berlin").

  3. Entfernungstabelle erstellen: Erstelle eine Tabelle, die alle Entfernungen zwischen häufig genutzten Orten anzeigt.


Tipps für Profis

  • API-Kosten im Blick behalten: Die Nutzung der Google Maps API kann kostenpflichtig sein. Informiere dich über die Preise und plane deine Nutzung entsprechend.

  • Fehlerbehandlung im VBA: Implementiere eine Fehlerbehandlung in deinen VBA-Code, um Probleme bei der API-Abfrage zu vermeiden.

  • Entfernung automatisch berechnen: Automatisiere den Prozess, indem du den VBA-Code so anpasst, dass er bei der Änderung von Adressdaten automatisch die Entfernung neu berechnet.


FAQ: Häufige Fragen

1. Wie kann ich die Entfernung zwischen zwei Orten berechnen, ohne die Google Maps API zu nutzen? Du kannst eine Tabelle mit den Entfernungen zwischen den Orten oder PLZ erstellen und diese in Excel verwenden.

2. Welche Excel-Version benötige ich, um diesen VBA-Code zu verwenden? Der VBA-Code sollte in den meisten modernen Excel-Versionen (Excel 2010 und später) funktionieren. Achte darauf, dass du Makros aktiviert hast.

3. Kann ich auch die Fahrtzeit zwischen zwei Orten ermitteln? Ja, die Google Maps API kann auch die Fahrtzeit berechnen. Du musst nur die entsprechende JSON-Property im VBA-Code anpassen.

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