VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2488|回复: 12

请教高手,怎样把文本型"3分23秒"此类的转换成203秒!

[复制链接]

1

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-3 18:00:01 | 显示全部楼层 |阅读模式
如题,诸如此类
回复

使用道具 举报

0

主题

7

帖子

6.00

积分

新手上路

Rank: 1

积分
6.00
发表于 2020-1-3 22:12:02 | 显示全部楼层
怎样把文本型"3分23秒"此类的转换成203秒
text1.text=3 分 text2.text=23  秒
prviate sub command1 click
  text3.text=val(text1.text)*60+text2.text
回复

使用道具 举报

0

主题

8

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2020-1-4 00:15:01 | 显示全部楼层
Debug.Print DateDiff("s", "00:00:00", "00:3:23")
回复

使用道具 举报

0

主题

9

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
发表于 2020-1-4 01:18:01 | 显示全部楼层
TimeSerial函数
回复

使用道具 举报

1

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-4 06:03:01 | 显示全部楼层
忘了说,此类数据很多并且长度都不同,例:
10分2秒
12分45秒
1分2秒
1分23秒
7秒   ---- 没有"分"
48秒  

  我的初步想法是:
1.用len函数得到长度,大于4的是有"分"的
   用SEARCH("分",str,1) 判断"分"前的位数是1位还是2位,然后用mid()取出
2.len小于4,字符串就没有"分",用search("秒",str,1)判断位数,然后用mid()取出
复杂了点,不知道有没有好点的方法!
回复

使用道具 举报

0

主题

34

帖子

17.00

积分

新手上路

Rank: 1

积分
17.00
发表于 2020-1-4 06:39:01 | 显示全部楼层
Debug.Print DateDiff("s", "00:00:00", "3分23秒")
返回203
Debug.Print DateDiff("s", "00:00:00", "8时15分49秒")
返回29749
回复

使用道具 举报

0

主题

34

帖子

17.00

积分

新手上路

Rank: 1

积分
17.00
发表于 2020-1-4 06:45:01 | 显示全部楼层
Debug.Print DateDiff("s", "00:00:00", "7秒")
返回7
回复

使用道具 举报

0

主题

34

帖子

17.00

积分

新手上路

Rank: 1

积分
17.00
发表于 2020-1-4 07:21:01 | 显示全部楼层
//我的初步想法是:
虽然你的想法也可以实现,不过太繁琐,
还是用现成的函数来的方便
回复

使用道具 举报

1

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-4 08:51:01 | 显示全部楼层
不过我是用在EXCEL中的,刚才我试了一下,不行啊,函数未定义!
回复

使用道具 举报

1

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-4 09:18:01 | 显示全部楼层
现在解决了,谢谢!~
还是用现成的函数方便啊!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表