十进制度分秒lisp函数_十进制经纬度与度分秒格式相互转换 Excel

每次出完野外回来处理GPS坐标数据时,都面临十进制和度分秒之间的转换问题,今天就来研究一下。

十进制转度分秒​

假设excel表格A2单元格中存储的是一个十进制的坐标值,想在B2单元格中得到度分秒坐标值并显示度分秒符号,计算公式则为

B2=​TEXT(INT(A2),"0")&"°"&TEXT(INT((A2-INT(A2))*60),"00")&"′"&TEXT(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*60,"00.0000")&"″"

效果:A2:38.927483317

B2:38°55′38.9399″

其中,text函数是将数字转换成文本显示的函数,最后的00.0000是用来调节秒的小数点后保留位数的。text函数之间用&连接。

度分秒转十进制​

​假设excel表格A2单元格中存储的是一个带度分秒符号的的坐标值,想在B2单元格中得到十进制坐标值,计算公式则为

​B2=ROUND(IF(ISERROR(MID(A1,1,FIND("°",A1)-1)),0,MID(A1,1,FIND("°",A1)-1))+IF(ISERROR(MID(A1,FIND("°",A1)+1,FIND("′",A1)-FIND("°",A1)-1)/60),0,MID(A1,FIND("°",A1)+1,FIND("′",A1)-FIND("°",A1)-1)/60)+IF(ISERROR(MID(A1,FIND("′",A1)+1,FIND("″",A1)-FIND("′",A1)-1)/3600),0,MID(A1,FIND("′",A1)+1,FIND("″",A1)-FIND("′",A1)-1)/3600),4)&"°"

效果:A2:38°55′38.9399″​

B2:38.9275°

公式中最后的数字4是控制小数点后位数的参数。

Have fun.​

你可能感兴趣的:(十进制度分秒lisp函数)