Find the nearest set of coordinates in Excel

前端 未结 2 892
后悔当初
后悔当初 2021-01-03 14:59

There are two tables, each with a coordinate pair: longitude and latitude, in decimal degrees (i.e, 37.23222, -121,3433). How do I match table A with its nearest coordinate

2条回答
  •  傲寒
    傲寒 (楼主)
    2021-01-03 15:49

    This problem was solved back in 2006 by Tom Ogilvy here, also found here.

    The sample that I created:

    Original problem:

    I have 20 named locations in a coordinates. Every point have x,y.

    column a has the location name
    column b has the x cooedinate
    column c has the y coordinate

    Now i have 400 coordinates in 2 columns (column e and f ) and want to have the name of the closest location (of the 20 named in column a) in column g.

    Original solution by Tom Ogilvy:

    Assuming original data starts in A1, B1 and C1 with first locations in E1 and F1

    If you don't want to fill your sheet with formulas, you can put this in G1 committed/entered with Ctrl+Shift+Enter rather than just enter since it is an array formula, then drag fill it down the 400 rows.

    =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)

提交回复
热议问题