以下代码在中文windows下运行没问题,但在英文版windows系统下报错,错误为 run time error '5' ,invalid procedure or commands
代码如下:
Dim myBArray() As Byte
myBArray() = StrConv(InStr1, vbFromUnicode)
其中Instr1会有中文字符,请问有什么解决办法?或者谁能给点代码完成相同的功能。
...全文
2645打赏收藏
一个关于StrConv函数在英文windows系统下报错的问题,大家进来帮忙!
以下代码在中文windows下运行没问题,但在英文版windows系统下报错,错误为 run time error '5' ,invalid procedure or commands 代码如下: Dim myBArray() As Byte myBArray() = StrConv(InStr1, vbFromUnicode) 其中Instr1会有中文字符,请问有什么解决办法?或者谁能给点代码完成相同的功能。
Public Function MyStrConv(s) As Byte()
Dim o() As Byte
ReDim o(LenB(s))
Dim i As integer,j As integer,k As integer,x As integer,y As integer
For i=1 To Len(s)
k=Asc(Mid(s,i,1))
If k<=255 Then
o(j)=k
j=j+1
Else
'x=k+65536以后的低8位
'y=k+65536以后的高8位
o(j)=x
o(j+1)=y
j=j+2
End If
Next
ReDim Preserve o(j-1)
MyStrconv=o
End Function