2017-02-08 2 views
1

Ich habe eine Reihe von Flughafen-Koordinaten wie definiert here, die ich versuche, Berechnungen in Excel durchzuführen.Finden der nächsten schließt Flughafen von einer Reihe von GPS-Koordinaten in Excel

Ich möchte den nächstgelegenen Flughafen für die Koordinaten jedes gegebenen Flughafens finden.


Die nächstgelegene ich habe in der Lage zu bekommen, ist die Verwendung der Formel:

=INDEX($A$1:$A$20,MATCH(MIN(SQRT(($B$1:$B$20-E1)^2+($C$1:$C$20-F1)^2)),SQRT(($B$1:$B$20-E1)^2+($C$1:$C$20-F1)^2),0),1)

wie auf this page gezeigt.


Allerdings liefert diese Formel die nächste genannt Lage (das heißt den Flughafen) zu einem bestimmten Satz von Koordinaten.

Wie kann ich die nächste nächsten Flughafen finden?

Sample data

+0

Nur frag dich, warum Sie die akzeptierten komplizierteste Formel? – R3uK

+0

@ R3uK, weil ich die Antworten in der Reihenfolge ausprobiert und die erste funktionierte ... – TheMightyLlama

+0

Ahah! Okay, ich verstehe jetzt! ;) – R3uK

Antwort

1

Hope this helfen, geben Sie die folgende Formel in D2 mit shif + ctrl + kopieren:

=INDEX($A$2:$A$19,MATCH(MIN(IF($B$2:$B$19&$C$2:$C$19=B2&C2,99999,ACOS(COS(RADIANS(90-$B$2:$B$19))*COS(RADIANS(90-B2))+SIN(RADIANS(90-$B$2:$B$19))*SIN(RADIANS(90-B2))*COS(RADIANS($C$2:$C$19-C2)))*6371)),IF($B$2:$B$19&$C$2:$C$19=B2&C2,99999,ACOS(COS(RADIANS(90-$B$2:$B$19))*COS(RADIANS(90-B2))+SIN(RADIANS(90-$B$2:$B$19))*SIN(RADIANS(90-B2))*COS(RADIANS($C$2:$C$19-C2)))*6371),0),1) 

enter image description here

+0

Genau was ich brauchte. Vielen Dank. Wie kann ich als Zusatzfrage die Ergebnisse auf jene Flughäfen beschränken, die in einer fünften Spalte "G" eine Flagge haben? – TheMightyLlama

2

Verwenden Sie die SMALL Formel:

SMALL({array};Nth) und LARGE({array};Nth) kehrt jeweils
die Nth kleinsten und größten Wert eines Satzes!

Ihre Formel aktualisiert:

=INDEX($A$1:$A$20,MATCH(SMALL(SQRT(($B$1:$B$20-E1)^2+($C$1:$C$20-F1)^2),2),SQRT(($B$1:$B$20-E1)^2+($C$1:$C$20-F1)^2),0),1) 
Verwandte Themen