HERBERS Excel-Forum - das Archiv

Thema: Wie lange dauerte die Odyssee

Wie lange dauerte die Odyssee
Wolfgang
Liebe Excel-Freunde, die Formel zur Berechnung der Entfernung zweier Orte auf der Erdkugel aus deren Koordinaten ist eine riesige Wurzel und so komplex, daß ich sie in mehrere Teile aufgesplittert, die in der Zeile des Ortes in einzelne Zellen, ferner berechne ich den Kurswinkel und aus der Entfernung in km, die in Seemeilen und daraus die benötigte Zeit in h und dann in d.
In der Tabelle "Odyssee" beginne ich mit Ablegen in Ithaka, Homers Odyssee beschreibt aber nur die Rückreise aus Troja, die Summen sind in grün ausgewiesen, darunter ungefärbt die Summen der eigentliche Odyssee, sie dauerte 653 Tage und war gut 40 km weit, nach Syrien.
Entschuldigt bitte einige Überschriften und in den Basisdaten ein paar Einträge habe ich in Spanisch belassen.
Wolfgang
AW: Wie lange dauerte die Odyssee
SF
Hola,
ohne die Datei wird die Odysee wohl nie zu Ende gehen.
Gruß,
steve1da
AW: Formel
Fennek
Hallo,

teste doch mal diese recht einfach und schnelle Formel:


Public Function DistCalc_2(ByVal Lat_1 As Double, ByVal Long_1 As Double, ByVal Lat_2 As Double, ByVal Long_2 As Double) As Double
Dim M As Double, N As Double, O As Double, P As Double, Q As Double
On Error GoTo Fehler

With WorksheetFunction
M = Cos(.Radians(90 - Lat_1))
N = Cos(.Radians(90 - Lat_2))
O = Sin(.Radians(90 - Lat_1))
P = Sin(.Radians(90 - Lat_2))
Q = Cos(.Radians(Long_1 - Long_2))
'Change 6371 to 3959 to get your result in Miles

DistCalc_2 = .Acos(.Round(M * N + O * P * Q, 13)) * 6371

Fehler:

If Err.Number <> 0 Then Debug.Print M * N + O * P * Q, .Acos(M * N + O * P * Q): Stop

End With
End Function


mfg