首先使用公式分解小数角度为度、分、秒三部分,再通过合并公式或VBA函数转换为“45° 30′ 15″”格式,适用于地理或天文数据处理。
如果您需要将Excel中的小数形式的角度值转换为更易读的度分秒格式,可以使用公式和函数组合来实现这一转换。这种操作常见于地理坐标或天文计算中。
本文运行环境:Dell XPS 13,Windows 11
一、使用公式分解小数角度
通过数学运算将小数角度拆分为度、分、秒三个部分。整数部分即为“度”,小数部分乘以60得到“分”,剩余小数再乘以60得到“秒”。
1、假设原始小数角度位于单元格A1,在B1中输入以下公式提取“度”:
=INT(A1)
2、在C1中输入以下公式计算“分”:
=INT((A1-B1)*60)
3、在D1中输入以下公式计算“秒”:
=((A1-B1)*60-C1)*60
4、可选:将三部分合并为一个文本字符串,在E1中输入:
=B1&”° “&C1&”′ “&ROUND(D1,2)&”″”
二、单个公式直接转换
使用一个复合公式直接将小数角度转换为度分秒的文本格式,适用于希望一步完成转换的用户。
1、在目标单元格中输入以下公式(假设原数据在A1):
=INT(A1)&”° “&INT(MOD(A1,1)*60)&”′ “&ROUND(MOD(MOD(A1,1)*60,1)*60,2)&”″”
2、按回车后即可显示格式化结果,如“45° 30′ 15″”。
3、确保A1中的数值为十进制度格式,否则结果将不准确。
三、使用VBA自定义函数
对于频繁进行此类转换的用户,可通过编写VBA函数简化操作,实现一键转换。
1、按下 Alt + F11 打开VBA编辑器。
2、插入新模块,粘贴以下代码:
Function DegToDMS(deg As Double) As String
Dim d As Integer, m As Integer, s As Double
d = Int(deg)
m = Int((deg – d) * 60)
s = Round(((deg – d) * 60 – m) * 60, 2)
DegToDMS = d & “° ” & m & “′ ” & s & “″”
End Function
3、关闭编辑器返回Excel,在任意单元格输入 =DegToDMS(A1) 即可获得度分秒结果。