Wie kann ich Entfernungen zwischen Geokoordinaten berechnen?
Folgende Funktion in ein Standardmodul kopieren:
Function Koordinatenentfernung(ByVal lat1 As Single, ByVal lon1 As Single, ByVal lat2 As Single, ByVal lon2 As Single) Koordinatenentfernung = Application.WorksheetFunction.Acos(Sin((lat1 * Application.WorksheetFunction.Pi() / 180)) * Sin((lat2 * Application.WorksheetFunction.Pi() / 180)) + Cos((lat1 * Application.WorksheetFunction.Pi() / 180)) * Cos((lat2 * Application.WorksheetFunction.Pi() / 180)) * Cos((lon2 * Application.WorksheetFunction.Pi() / 180) - (lon1 * Application.WorksheetFunction.Pi() / 180))) * 6378.137 End Function
In die Zelle kommt die Formel:
=Koordinatenentfernung(F1;F2;D5;E5)
Mit Prüfung auf leere Zellen und zum Ziehen kann ab Excel 365 die Formel verwendet werden:
=@WENN(ISTZAHL(D5:E5);Koordinatenentfernung($F$1;$F$2;D5;E5);"")
Oder in älteren Versionen:
=WENN(UND(ISTZAHL(D5);ISTZAHL(E5));Koordinatenentfernung($F$1;$F$2;D5;E5);"")
Die Zellen mit den Ergebnissen können mit 0,00 "km" formatiert werden.