rs.Fields(0).Value = Trim(rs.Fields(0).Value) For i = 0 To Len(rs.Fields(0).Value) s = Mid(rs.Fields(0).Value) Debug.Print Asc(s) Next '这样输出每一个字符的ASCII码,将其中不能显示的符号替换为空串就行了
这个文件中的数据至少要如下处理: s = Replace(s, Chr(-352), vbNullString) s = Replace(s, Chr(0), vbNullString) s = Replace(s, Chr(32), vbNullString) s = Replace(s, Chr(255), vbNullString)
Dim a As String
a = "aaa" & Chr(160) & "BBB"
a = Replace(a, Chr(160), "")
Debug.Print a
End Sub
那个页面是在一个用户帐号里,所以无法给出页面地址不过小弟已经上传了那个Excel文件,有时间的大侠研究下哈http://www.opendrive.com/files/6008086_BeEB9/123.xls
看不懂啊猴哥,其实我的程序是一个把EXCEL导入ACCESS,如果EXCEL中存在真正意义上的空格,那么会被成功删除,如果存在那个从网页上复制下来的莫名其妙的字符,则无法截取和替换掉
Dim a As String
a = "aaa" & ChrW(12288) & "BBB"
a = Replace(a, ChrW(12288), "")
Debug.Print a
End Sub
rs.Fields(0).Value = Replace(rs.Fields(0).Value, Chr(160), "")
rs.Fields(0).Value = Trim(rs.Fields(0).Value)
rs.Fields(0).Value = Replace(rs.Fields(0).Value, Chr(160), "")
这个刚才试过了,不行的,我先说一下我是如何知道它是160的,我把Excel里的那个空白字符选中复制,然后到 http://www.weste.net/tools/ASCII.asp 这里转换得知,这样测试行不行
strtest = String$(1024, Chr(32))
取值
----处理
strtest = Left(Trim(strtest), Len(Trim(strtest)) - 1)
For i = 0 To Len(rs.Fields(0).Value)
s = Mid(rs.Fields(0).Value)
Debug.Print Asc(s)
Next
'这样输出每一个字符的ASCII码,将其中不能显示的符号替换为空串就行了
这个文件中的数据至少要如下处理:
s = Replace(s, Chr(-352), vbNullString)
s = Replace(s, Chr(0), vbNullString)
s = Replace(s, Chr(32), vbNullString)
s = Replace(s, Chr(255), vbNullString)