怎样在excel表格中设置,输入10.4852代表10°48′52
推荐答案
数据在a1
b1输入 =left(a1,2)&"°"&mid(a1,4,2)&"′"&mid(a1,6,2)&""
int函数与round函数或者可以这样
选中数据-点右健设置单元格格式-自定义输入
0."°"00"′"00""
确定
最好复制我的,ctrl+cctrl+v
最佳答案:
=MID(A1,1,FIND(".",A1)-1)&"°"&MID(A1,FIND(".",A1)+1,2)&"′"&MID(A1,FIND(".",A1)+3,2)&""
测试结果:
10.9826      10°98′26
191.16521    191°16′52
87.01263    87°0126
数据在A列,在B1输入公式=TEXT(A1*10000,"00°00′00〃")公式向下复制。
- 74° 10'21.50"
转换成 带正负 DD.DDDDDD
最佳答案
=IF(LEFT(A1)="-","-","")&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(IF(LEFT(A1)="-",MID(A1,2,99),A1)," ",""),"°",":"),"'",":"),"""","")*24
计算公式,可以精确得计算出结果,如下:
fx=TEXT(INT(A2),"0")&“."&TEXT(INT((A2-INT(A2))*60),"00")&TEXT(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*60*x,"000000")
其中A2代表十进制度数所在的单元格
调节x的位数,可以取得秒的不同精度,如10000,会取到秒的小数点后四位;1000000,取到后六位。
如:130.03145632,输出130.0153242752
如果要加上度、分、秒等汉字或符号,只需在中间&符号处稍作文章,如:
f(x)=TEXT(INT(A2),"0")&"°"&TEXT(INT((A2-INT(A2))*60),"00")&"′"&TEXT(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*60,"00.0000")&""
此处需注意后面秒的格式。精度调节此时要在后面的"00.0000"格式字符串中调节。
如:130.03145632,输出130°0153.2428
格式-单元格-数字-自定义-类型:
[h]°mm′ss〃
输入的时候要用冒号“:”隔开
若要实现快速输入
可用下面的方法
在A1输入下面的公式往下拉:
=VALUE(CONCATENATE(MID(B1,1,2),":",MID(B1,3,2),":",MID(B1,5,2)))
B列设置为文本格式
每个单元格输入六位数
不足的补0
第3第5位的数要小于6
EXCEL中度与度分秒换算
(2006-12-31 16:30:47)
转载
分类: 电脑路基础
一、度分秒值换算为度

首先要将单位符号都去掉,形成 1112233 的形式,分秒小于十的要在其前补0,必须如此,不然无法判断分与秒的位置。
假设原始数据在A列,第一个数据在A2单元格。

在你需要放入转换结果的一个单元格内(最好是与A2同一行,这样有大量原始数据要转换时,直接下拉就可以转换所有数据),输入:

=value(MID(IF(LEN(A2)=6,CONCATENATE("0",A2),A2),1,3))+value(MID(IF(LEN(A2)=6,CONCATENATE("0",A2),A2),4,2))/60+value(MID(IF(LEN(A2)=6,CONCATENATE("0",A2),A2),6,2))/3600

回车即可。

下面解释转换方法和函数意义。
1112233 为例。
算法是111+22/60+33/3600),即把分、秒都算成度后相加。
MID:意为选择指定的字符,具体写法为MID(数据,顺位,字符数),先指定1-3位(度位),再指定4-5位(分位)/60,再指定6-7位(秒位)/3600
value:意为转换成为数值,这样才能进行运算。

关键问题在于,度有可能是2位数,如果这样整个数就是6位,上例算式中的

IF(LEN(A2)=6,CONCATENATE("0",A2),A2)

就是处理这样的问题的。意思为如果整个是6位数,就在其前补个0,若不是6位,就直接用原来的数值(呵呵,在中国及周边没有6位和7位以外的经纬度,现在这个算法适用于6位和7位的经纬度)。
IF:条件函数,用法:IF(logical_testvalue_if_truevalue_if_false),其中logical_test为判断条件,在本例中为LEN(A2)=6,满足条件执行value_if_true,不满足则执行value_if_false
LEN:为返回字符数的函数。
CONCATENATE:为合并字符函数,写法为:CONCATENATE(text1text2...),如要直接使用文本字符,就在其上加英文引号。



二、度转换为度分秒

假设原始数据在A列,第一个数据在A2单元格。
在你需要放入转换结果的一个单元格内(最好是与A2同一行,这样有大量原始数据要转换时,直接下拉就可以转换所有数据),输入:

=CONCATENATE(INT(A2)IF(INT((A2-INT(A2))*60)<10CONCATENATE("0"INT((A2-INT(A2))*60))INT((A2-INT(A2))*60))IF(ROUND(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*600)<10CONCATENATE("0"ROUND(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*600))ROUND(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*600)))

回车即可。

解释如下:
112.1234567度为例。
使用 CONCATENATE 文本组合函数,将分别计算出的度、分、秒组合在一起(其用法参照前一帖)。
本例中的INT(A2),取的是112,即度值;IF(INT((A2-INT(A2))*60)<10CONCATENATE("
0"INT((A2-INT(A2))*60))INT((A2-INT(A2))*60))取的是分值;IF(ROUND(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*600)<10CONCATENATE("0"ROUND(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*600))ROUND(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*600)),取的是秒值。

比较关键的一点是,分、秒在计算完后可能会小于10,这样就会出现本应为7位的度分秒值成了6位或5位,因此在计算分和秒时,加了一个条件语句,即若其值小于10,就在前面补个0INT((A2-INT(A2))*60)<10是判断分值是否小于10ROUND(((A2-INT(A2))*60-INT((A2-INT(A2))*60))*600)<10是判断秒值是否小于10

INT 是取整函数,可对任意实数向下取整为最接近的整数,向下的意思为往小的方向,如 =INT(3.38)返回3=INT(-3.38)返回-4。该函数与 TRUNC 函数都有取整的功能,TRUNC 函数可以按需要截取数字的小数部分,而 INT 函数则将数字向下舍入到最接近的整数。INT TRUNC 函数在处理负数时不同点:TRUNC(-4.30)返回-4,而INT(-4.3)返回-5

ROUND 为四舍五入函数,本例中秒值不再留有小数,因此将其四舍五入了,这就是计算分值的时候用 INT 函数,而计算秒值的时候用 ROUND 函数的原因。该函数的写法为 ROUND(numbernum_digits),其中的number是待处理的数值(也可是表达式的结果),num_digits是保留的小数位数。本例中的小数保留


三、求度分秒范围转度的中心坐标值

这里只算经度或纬度的一项,要算另一项,只需改动原始数据位置,重复操作即可。

假设原始数据在A列和B列,B列数据比A列数据大。第一个数据项在A2B2

每个值的算法原理是:
将经纬度都设立成7位,将度、分、秒都折算成度,转换方法参照前帖。用度来计算的好处是不会产生度分秒的进位问题,而同时度也可在上图时使用,若想将度转换成度分秒,就
参照本人的前一帖。

结果的算法是(B2-A2/2+A2

在你需要放入转换结果的一个单元格内(最好是与A2B2的同一行,这样有大量原始数据要转换时,直接下拉就可以转换所有数据),输入:

=((value(MID(IF(LEN(B2)=6CONCATENATE("0"B2)B2)13))+value(MID(IF(LEN(B2)=6CONCATENATE("0"B2)B2)42))/60+value(MID(IF(LEN(B2)=6CONCATENATE("0"B2)A2)62))/3600)-(value(MID(IF(LEN(A2)=6CONCATENATE("0"A2)A2)13))+value(MID(IF(LEN(A2)=6CONCATENATE("0"A2)A2)42))/60+value(MID(IF(LEN(A2)=6CONCATENATE("0"A2)A2)62))/3600))/2+value(MID(IF(LEN(A2)=6CONCATENATE("0"A2)A2)13))+value(MID(IF(LEN(A2)=6CONCATENATE("0"A2)A2)42))/60+value(MID(IF
(LEN(A2)=6CONCATENATE("0"A2)A2)62))/3600

回车即可。
也就是将123.456度转换成123 *** **** 秒的方法,我想要请教的是用函数公式计算的方法和表示方法,是将123.456度转换成123 *** **** 秒。
假设数据在A1,在B1输入
=INT(LEFT(A1,LEN(A1)-1))&""&INT(MOD(LEFT(A1,LEN(A1)-1)*60,60))&""&INT(MOD(LEFT(A1,LEN(A1)-1)*3600,60))&""
就可以了。
返回 1232721
123+27/60+21/3600=123.455833333333,约等于123.456
比如单元格A1中输入 79°31′29
 单元格A2中输入 237°42′47
 要求单元格A3公式为=A1+A2,计算结果应该显示317°14′16
写这个公式我都有点烦了:(,不知道还有没有更好的方法,也许还是用VBA方便点吧。
=LEFT(A1,FIND("°",A1)-1)+LEFT(B1,FIND("°",B1)-1)+INT((MID(A1,FIND("°",A1)+1,FIND("′",A1)-FIND("°",A1)-1)+MID(B1,FIND("°",B1)+1,FIND("′",B1)-FIND("°",B1)-1)+INT((MID(A1,FIND("′",A1)+1,FIND("",A1)-FIND("′",A1)-1)+MID(B1,FIND("′",B1)+1,FIND("",B1)-FIND("′",B1)-1))/60))/60)&"°"&MOD(MID(A1,FIND("°",A1)+1,FIND("′",A1)-FIND("°",A1)-1)+MID(B1,FIND("°",B1)+1,FIND("′",B1)-FIND("°",B1)-1)+INT((MID(A1,FIND("′",A1)+1,FIND("",A1)-FIND("′",A1)-1)+MID(B1,FIND("′",B1)+1,FIND("",B1)-FIND("′",B1)-1))/60),60)&"′"&MOD(MID(A1,FIND("′",A1)+1,FIND("",A1)-FIND("′",A1)-1)+MID(B1,FIND("′",B1)+1,FIND("",B1)-FIND("′",B1)-1),60)&""
楼主,可试试这样的方法:
A1B1C1D1,分别输入79 31 29 =A1&"°"&B1&"′"&C1&""
A2B2C2D2,分别输入237 42 47 =A2&"°"&B2&"′"&C2&""
A3B3C3D3,分别输入=IF(B1+B2>60,A1+A2+1,A1+A2) =IF(C1+C2>60,IF(B1+B2>
60,B1+B2-60+1,B1+B2-60)) =IF(C1+C2>60,C1+C2-60,C1+C2) =A3&"°"&B3&"′"&C3&""


另外可拆散开来,单独加度分秒,比如设置单元格A1格式为自定义:G/通用格式°,确定后输入数据79就为79°,分秒方法依此类推。
如果用自定义格式来显示°′〃的话,即
0"°"00"′"00""
这样公式可以变成:
=(INT(A1/10000)+INT(B1/10000)+INT(ROUND(RIGHT(A1,4)+RIGHT(B1,4)-11,-2)/6000))*10000+MOD(ROUND(RIGHT(A1,4)+RIGHT(B1,4)-11,-2),6000)+MOD(MOD(A1,100)+MOD(B1,100),60)
如果是格式的话,就如10楼吧主说的用自定义格式 0"°"00"′"00"
不过原数值*10000,才能正确显示。
如果进行角度的运算的话,在单元格中输入60进制的角度,如:234127
23.4127格式输入,小数点前是度,后面是分和秒。然后用INT函数将60进制转换成十进
制(=INT(A1)+INT((A1-INT(A1))*100)/60+((A1-INT(A1))*100-INT((A1-INT(A1))*100))/36)参加加减运算,最后可用(=Int(A1) + Int((A1 - Int(A1)) * 60) / 100 + ((A1- Int(A1)) * 3600 - (Int((A1 - Int(A1)) * 60)) * 60) / 10000)公式再转换为度.分秒格式。

以上仅供参考。
假设数据在A1,在B1输入
=INT(LEFT(A1,LEN(A1)-1))&""&INT(MOD(LEFT(A1,LEN(A1)-1)*60,60))&""&INT(MOD(LEFT(A1,LEN(A1)-1)*3600,60))&""
就可以了。
如何用Excel表格将“度”转换成“度分秒”格式??
20
[ 标签:excel表格,度分秒 ]
就是 将 123.456度 转换成 123度 ***分 **** 秒 的 方法
问题补充  2010-02-26 11:15
我想要请教 的是 用函数公式 计算的方法 和表示方法
是 将 123.456度 转换成 123度 ***分 **** 秒
~╲_/~↘磊〓 回答:3 人气:13 解决时间:2010-02-26 12:53
满意答案
好评率:100%
假设数据在A1,在B1输入
=INT(LEFT(A1,LEN(A1)-1))&"度"&INT(MOD(LEFT(A1,LEN(A1)-1)*60,60))&"分"&INT(MOD(LEFT(A1,LEN(A1)-1)*3600,60))&"秒"
就可以了。
提问人的追问   2010-02-26 11:27
这个不对啊 分 是对了 秒不对啊 你再看看
回答人的补充   2010-02-26 11:35
对的。
返回 123度27分21秒
123+27/60+21/3600=123.455833333333,约等于123.456
提问人的追问   2010-02-26 12:29
你看看 这个秒是0 啊 用别的算 也差在秒上
回答人的补充   2010-02-26 12:44
呵呵,理解错误,我以为你在A1输入的是 123.456

公式更简单了:
=INT(A1)&"度"&INT(MOD(A1*60,60))&"分"&INT(MOD(A1*3600,60))&"秒"
提问人的追问   2010-02-26 12:52

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。