乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 47|回复: 3

提出数字

[复制链接]

68

主题

177

帖子

4

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
449
发表于 2006-4-5 20:57:00 | 显示全部楼层 |阅读模式
请教
请问提取字符串中的数字函数是什么?为什么val(string)不可以用呢?
visual lisp中用(atoi strint)而vba中不可以
就如假如我输入m3, 要返回3给我
输入m3.25,要返回3.25给我
输和ttymp3.56要返回3.56给我
请知道者告知这个函数是什么?在此先谢谢诸位
回复

使用道具 举报

1

主题

157

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
161
发表于 2006-4-6 16:06:00 | 显示全部楼层
Val 函数,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识别。但是函数可以识别进位制符号 &O(八进制)和 &H(十六进制)。空白、制表符和
符都从参数中被去掉。
如果你的第一个有效字符不是数字,那么val函数就什么也提不出来了,返回值为0
好像没有函数能实现你的要求,看样只能写个子程序自己判断了(asc码)

回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2006-4-6 20:18:00 | 显示全部楼层
Function MyVal(String1 As String) As Double
Dim n As Integer, i
For i = 1 To Len(String1)
n = Asc(String1)
If n = 45 And a  47 Then
MyVal = Val(String1)
Else
String1 = Mid(String1, 2)
End If
Next
End Function
Sub tt()
MsgBox MyVal("s-.89f")
End Sub
回复

使用道具 举报

68

主题

177

帖子

4

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
449
发表于 2006-4-6 21:48:00 | 显示全部楼层
十分感谢雪山飞孤,请问师傅是否可以留个qq号或其它的联系方法
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-5 11:53 , Processed in 0.696355 second(s), 71 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表