Office中国论坛/Access中国论坛

标题: [求助]如何从字符格式中提取数字? [打印本页]

作者: secowu    时间: 2006-1-12 03:36
标题: [求助]如何从字符格式中提取数字?
一个可能字段包含如下的字符记录:

250P

125 P

175镑

175 镑

请问如何只提取其中的数字呢?

250

125

175

175


作者: secowu    时间: 2006-1-12 03:39
单用EVAL出现错误

还有什么别的办法么?
作者: secowu    时间: 2006-1-12 03:45
呵呵,借用EXCEL里的

搞定了

Public Function sumtext(rng As String)
For i = 1 To Len(rng)
If InStr("0123456789", Mid(rng, i, 1)) And Mid(rng, i + 1, 1) <> ")" Then
  sumtext = sumtext + Mid(rng, i, 1)
Else
  sumtext = sumtext + "+"
End If
Next
sumtext = Eval(sumtext + "+0")
End Function

作者: fan0217    时间: 2006-1-12 03:57
何必那么复杂,用Val()函数即可。

Val 函数

返回包含于字符串内的数字,将其作为适当类型的数字值。

语法

Val(string)

必选参数 string 是任何有效的字符串表达式。

说明

Val 函数将在第一个无法识别为数字组成部分的字符处停止读取字符串。不会识别通常被视为数值组成部分的符号和字符,如货币符号和逗号。不过,此函数可以识别基数前缀
  1. &O
复制代码
(对于八进制)和
  1. &H
复制代码
(对于十六进制)。参数中的空格、制表符和换行符将被删除。

下面的函数将返回值 1615198:
  1. Val("    1615 198th Street N.E.")
复制代码

[此贴子已经被作者于2006-1-11 19:58:43编辑过]


作者: 一点通    时间: 2006-1-12 07:05
fan0217的方法是正解
作者: secowu    时间: 2006-1-12 16:03
呵呵,学习了,多谢[em01]
作者: Alashome    时间: 2015-7-2 07:46
good




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3