求EXCEL公式进行经纬度与XY坐标的相互转换?

请编公式并用图片的数据验证(在蓝色单元格输入公式)。谢谢。

如果满意还将可加50财富。
我的是北京54坐标3度带
不要告诉我用什么软件、和这样的公式
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

  一、用EXCEL进行高斯投影换算

  从经纬度B、L换算到高斯平面直角坐标X、Y(高斯投影正算),或从X、Y换算成B、L(高斯投影反算),一般需要专用计算机软件完成。在目前流行的换算软件中不足之处,就是灵活性较差,大都需要一个点一个点地进行,不能成批量地完成,给实际工作带来许多不便。而用EXCEL可以很直观、方便地完成坐标换算工作,不需要编制任何软件,只需要在EXCEL的相应单元格中输入相应的公式即可。下面以1954年北京坐标系为例,介绍具体的计算方法。

  上图为编辑好的EXCEL表(红色为输入数据项)

  完成经纬度B、L到平面直角坐标X、Y的换算,在EXCEL中大约需要占用21列,当然读者可以通过简化计算公式或考虑直观性,适当增加或减少所占列数。在EXCEL中以公式从第3行第1列(A3格)为起始单元格为例,各单元格的公式如下:

  (1)单元格A3输入中央子午线,以度、分、秒形式输入,如107度0分则输入107.00

  (2)单元格B3公式如上图,把L0化成度形式。

  (3)单元格C3以度小数形式输入纬度值,如23°44′01″则输入23.4401。

  (4)单元格D3以度小数形式输入经度值,如107°42′48″则输入107.4248。

  (5)单元格E3公式如上图,把纬度B化成度形式。

  (6)单元格F3公式如上图,把经度L化成度形式。

  (7)各个单元格输入公式如下:

  表中计算公式见由孔祥元等主编、武汉大学2002年出版的《控制测量学》,EXCEL软件的操作方法请参阅有关资料。按上面表格中的公式输入到相应单元格后,就可方便地由经纬度求得平面直角坐标。当输入完所有的经纬度后,用鼠标下拉即可得到所有的计算结果。表中的许多单元格公式为中间过程,可以用EXCEL的列隐藏功能把这些没有必要显示的列隐藏起来,表面上形成标准的计算报表,使整个计算表简单明了,可计算的数据量是无限的,当第一次输入公式后,相当于自己完成了一软件的编制,可存储起来供今后重复使用。高斯投影反算修改公式就可以了。

  二、GPS坐标转换方法与计算应用

  GPS所采用的坐标系是一个协议地球参考系,坐标系原点在地球质心,简称WGS-84坐标系。GPS的测量结果与我国的1954北京坐标系或1980西安坐标系的坐标相差几十米至一百多米,随区域不同,差别也不同,经粗略统计,我国西部相差70米左右,东北部140米左右,南部75米左右,中部45米左右。由此可见,必须将WGS-84坐标进行坐标系转换才能供标图使用。坐标系之间的转换一般采用七参数法、四参数法、拟合参数法及校正参数法,其中七参数为X平移、Y平移、Z平移、X旋转、Y旋转、Z旋转以及尺度比参数,若忽略旋转参数则为四参数方法,四参数法为七参数法的特例。这里的X、Y、Z是空间大地直角坐标系坐标,为转换过程的中间值。在实际工作中我们常用的是平面直角坐标,是否可以跳过空间直角坐标系,省略复杂的运算进行简单转换呢?经过长期的实践,证明是可行的。其原理是:把GPS所测定的WGS-84坐标当作是具有一定系统性误差的1954北京坐标系坐标值,然后通过国家已知点纠正消除该系统误差。我们暂把该方法称作“坐标改正法”,下面以WGS-84坐标转换成1954北京坐标系坐标为例,介绍数据处理方法:

  首先,在测区附近选择一国家已知点,在该已知点上用GPS测定WGS-84坐标系经纬度B和L,把此坐标视为有误差的1954北京坐标系坐标,利用EXCEL将经纬度B、L转换成平面直角坐标X'、Y',然后与已知坐标X、Y比较则可计算出偏移量

  △X=X-X'    △Y=Y-Y'

  式中的X、Y为国家控制点的已知坐标,X'、Y'为测定坐标,△X和△Y为偏移量。求得偏移量后,就可以用此偏移量纠正测区内的其他测量点了。把其他GPS测量点的经纬度测量值,转换成平面坐标X'、Y',在此X、Y坐标值上直接加上偏移值就得到了转换后的1954北京坐标系坐标:

  X=X'+△X    Y=Y'+△Y

  在上述EXCEL计算表的最后两列,附加上求得的改正数并分别与计算出来的X、Y相加后,即得到转换结果。利用“坐标改正法”进行坐标系的转换,可满足对坐标转换精度要求不高的测绘项目。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2019-11-07
有个Excel表格公式,能满足你的要求。
一、用EXCEL进行高斯投影换算

从经纬度BL换算到高斯平面直角坐标XY(高斯投影正算),或从XY换算成BL(高斯投影反算),一般需要专用计算机软件完成,在目前流行的换算软件中,存在一个共同的不足之处,就是灵活性较差,大都需要一个点一个点地进行,不能成批量地完成,给实际工作带来许多不便。笔者发现,用EXCEL可以很直观、方便地完成坐标换算工作,不需要编制任何软件,只需要在EXCEL的相应单元格中输入相应的公式即可。下面以54系为例,介绍具体的计算方法。

完成经纬度BL到平面直角坐标XY的换算,在EXCEL中大约需要占用21列,当然读者可以通过简化计算公式或考虑直观性,适当增加或减少所占列数。在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.78006+Q2*(133.92133+Q2*0.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

表中公式的来源及EXCEL软件的操作方法,请参阅有关资料,这里不再赘述。按上面表格中的公式输入到相应单元格后,就可方便地由经纬度求得平面直角坐标。当输入完所有的经纬度后,用鼠标下拉即可得到所有的计算结果。表中的许多单元格公式为中间过程,可以用EXCEL的列隐藏功能把这些没有必要显示的列隐藏起来,表面上形成标准的计算报表,使整个计算表简单明了。从理论上讲,可计算的数据量是无限的,当第一次输入公式后,相当于自己完成了一软件的编制,可另存起来供今后重复使用,一劳永逸。本回答被网友采纳
第2个回答  2020-11-03

看了很多答案发现错误的地方很多,所以特地答一下,首先要清楚转换原理如下:

假设单元格内容如下:

则excel公式:

LEFT(B1,FIND("°",B1)-1)+(MID(B1,FIND("°",B1)+1,FIND("′",B1)-FIND("°",B1)-1)+MID(B1,FIND("′",B1)+1,LEN(B1)-FIND("′",B1)-1)/60)/60

按照题主的所问,公式如下:

公式如下:=A1+(B1+C1/60)/60

第3个回答  推荐于2017-09-27

  按照你的要求,自己写了个Excel表格,能够实现你要的功能,在计算的时候,和你给出的数据存在一定误差,那是椭球参数不同的原因,你可以按照自己的需求,更改椭球参数。

  需要指明你一个错误:

  在你上传图片所示数据中,2784846是X坐标,不是Y坐标。反之,37594515.5是Y坐标,不是X坐标。按照平面直角坐标系,横轴是X,纵轴是Y;但描述高斯投影坐标系时,纵轴是X,横轴是Y。建议你去学习一下大地测绘方面的知识,其实一切都不难,是个高中生就能看明白。

本回答被提问者采纳
第4个回答  2014-08-23
直接在G2输入公式=C6,下拉和右拉。在F6输入公式:=C2,下拉和右拉。
不知道能否实现你的要求。
相似回答