x="送达非11" for i=0 to len(x) if asc(mid(x,i,1))>255 then '英文 else '非中文 endif
错了 x="送达非11" for i=0 to len(x) if asc(mid(x,i,1))<255 then '英文 else '非中文 endif
还有个更简单的方法: If Len(变量) = LenB(StrConv(变量, vbFromUnicode)) Then '包括双字节的字符,返回true End If '不包括双字节的字符,返回false这段代码能测试出变量中是不是包括双字节的字符(汉字是双字节的), 但是如果字符变量中有"!?"等中文标点或者其他双字节的字符如日文俄文,也会返回true,如果你一定要判断该字符是不是中文,是很麻烦的,因为汉字在Unicode码表中不连续排列,你必须写很多个if才行。
for i=0 to len(x)
if asc(mid(x,i,1))>255 then
'英文
else
'非中文
endif
x="送达非11"
for i=0 to len(x)
if asc(mid(x,i,1))<255 then
'英文
else
'非中文
endif
'包括双字节的字符,返回true
End If
'不包括双字节的字符,返回false这段代码能测试出变量中是不是包括双字节的字符(汉字是双字节的), 但是如果字符变量中有"!?"等中文标点或者其他双字节的字符如日文俄文,也会返回true,如果你一定要判断该字符是不是中文,是很麻烦的,因为汉字在Unicode码表中不连续排列,你必须写很多个if才行。