已知两点经纬度 如何在excel中求两点之间距离

问题描述:

已知两点经纬度 如何在excel中求两点之间距离
A点:-1.1786 34.61142
B点:-1.26388 36.7966
已知大约是250Km,
请问具体公式是怎样的?
以前见别人用过,但现在搜索不到了
好像有sqt,cos等函数,很长的一段公式
1个回答 分类:综合 2014-11-29

问题解答:

我来补答
下面以54坐标系为例,介绍具体的计算方法.
完成经纬度BL到平面直角坐标XY的换算.在EXCEL中,选择输入公式的起始单元格,例如:第2行第1列(A2格)为起始单元格,各单元格的格式如下:
单元格;单元格内容;说明
A2;输入中央子午线,以度.分秒形式输入,如115度30分则输入115.30;起算数据L0
B2;=INT(A2)+(INT(A2*100)-INT(A2)*100)/60+(A2*10000-INT(A2*100)*100)/3600;把L0化成度
C2;以度小数形式输入纬度值,如38°14′20〃则输入38.1420;起算数据B
D2;以度小数形式输入经度值;起算数据L
E2;=INT(C2)+(INT(C2*100)-INT(C2)*100)/60+(C2*10000-INT(C2*100)*100)/3600;把B化成度
F2;=INT(D2)+(INT(D2*100)-INT(D2)*100)/60+(D2*10000-INT(D2*100)*100)/3600;把L化成度
G2;=F2-B2;L-L0
H2;=G2/57.2957795130823;化作弧度
I2;=TAN(RADIANS(E2));Tan(B)
J2;=COS(RADIANS(E2));COS(B)
K2;=0.006738525415*J2*J2
L2;=I2*I2
M2;=1+K2
N2;=6399698.9018/SQRT(M2)
O2;=H2*H2*J2*J2
P2;=I2*J2
Q2;=P2*P2
R2;=(32005.7031))
S2;=6367558.49686*E2/57.29577951308-P2*J2*R2+((((L2-58)*L2+61)*
O2/30+(4*K2+5)*M2-L2)*O2/12+1)*N2*I2*O2/2
计算结果X
T2;=((((L2-18)*L2-(58*L2-14)*K2+5)*O2/20+M2-L2)*O2/6+1)*N2*(H2*J2)
计算结果Y
按上面表格中的公式输入到相应单元格后,就可方便地由经纬度求得平面直角坐标.当输入完所有的经纬度后,用鼠标下拉即可得到所有的计算结果.
原理:
设地球上某点的经度为lambda,纬度为phi,
则这点的空间坐标是
x=cos(phi)*cos(lambda)
y=cos(phi)*sin(lambda)
z=sin(phi)
设地球上两点的空间坐标分别为(x1,y1,z1),(x2,y2,z2)
则它们的夹角为
A=acos(x1*x2+y1*y2+z1*z2),A是角度
则两地距离为
A/180*pi*R,其中R为地球平均半径6371
误差不超过1%
 
 
展开全文阅读
剩余:2000