Office中国论坛/Access中国论坛

标题: 求教:将全角输入的数字全部替换成半角的代码 [打印本页]

作者: wang1950317    时间: 2007-10-12 11:25
标题: 求教:将全角输入的数字全部替换成半角的代码
各位老师:表1  a列为数字在输入时有时会发生使用全角输入,造成数据库在做一些统计时不能识别而出错
表1
a                                            b                            c
0.11
0.25
0.35(全角输入)
0.12
其中0.35是误用全角输入,能否在一命令按钮中使用代码把这些使用全角的数字全部替换成半角?或在输入时一旦使用全角即出现提示的代码.
谢谢!
作者: andymark    时间: 2007-10-12 11:40
If Asc(Me.Text0) < 0 Then
   MsgBox "全角"
   Else
   MsgBox "半角"
End If
作者: wang1950317    时间: 2007-10-12 14:03
谢谢andymark老师指点。这用于检查输入字符是否为全角或半角很有用。但对于表中一整列(例如一楼表1中a列)混有全角的数据,怎样用一段代码使全角的数据都变成半角呢?
作者: andymark    时间: 2007-10-12 14:42
全角输入的字符ASC值为负,半角输入的字符为正。根据这个特点循环读取某字段的值加以判断,即可搜索出全角输入的数据
作者: wang1950317    时间: 2007-10-12 16:51
andymark老师:搜索出来后是要人工逐一修正吗?有没有法子在搜索的过程中就自动更正过来?
作者: andymark    时间: 2007-10-12 18:52
做了个例子
作者: wang1950317    时间: 2007-10-13 09:43
啊,真是谢谢andymark老师啦!
小的代码太菜,StrConv(Str, vbNarrow)函数弄明白了。
但Replace函数第一次接触,请问Replace(Str, "。", ".")如何理解?一点也不懂啦!
请andymark老师指点一下。谢谢!
作者: andymark    时间: 2007-10-13 10:24
Replace(Str, "。", ".")     把"。"替换成小数点"."

vbNarrow参数 将字符串中的宽(双字节)字符转换成窄(单字节)字符 半角
作者: wang1950317    时间: 2007-10-13 11:30
受教!原来全角小数点是那个样子的。谢谢!




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