# Re: val细问 ....

Posted by 832065 on September 23, 1998 at 11:21:49:

In Reply to: Re: val细问 .... posted by AndyLin on September 19, 1998 at 10:37:38:

: : dim stra as string
: : dim inta as integer
: : stra="A B C D"
: : inta=val(stra)
: : 假设A,B,C,D为四个整数值....
: : 我们都知道执行完上面三行的程式
: : 后, inta 的值为ABCD,空白键会被乎略掉,
: : 有没什么办法,
: : 可以分别读取A,B,C,D这四个数值呢???
: : 注意哦!A,B,C,D这四个数字的位数并不一定....
: : 假设A=1,B=10,C=10,D=1或者
: : A=150,B=2,C=20,D=123466那么,要如何撰写程式呢???
: : 我试过用 LEFT 这个函数写一个回圈程式,
: : 可是......好像没那么简单哦....试试看....
: : 小弟在此先行谢过了....

: 以下是我写的程式,请参考看看
: :text1 是所要分析之字串,且并不知道其中含有几个item

: Dim i, j As Integer
: Dim vData() As String
: Dim Str1 As String
: Text1 = Trim(Text1) & " "
: Str1 = Text1
: 'get how many item
: For i = 1 To Len(Text1)
: If InStr(1, Text1, " ") <> 0 Then
: j = j + 1
: Text1 = Right(Text1, Len(Text1) - InStr(1, Text1, " "))
: End If
: Next
: 'put the item into vdata()
: ReDim vData(j)
: Text1 = Str1
: j = 0
: For i = 1 To Len(Text1)
: If InStr(1, Text1, " ") <> 0 Then
: vData(j) = Left(Text1, InStr(1, Text1, " ") - 1)
: Text1 = Right(Text1, Len(Text1) - InStr(1, Text1, " "))
: j = j + 1
: End If
: Next

嗯!这个办法有用哦!原来回圈还可以这样用....
谢谢你了,AndiLin
832065 1998/9/23

Follow Ups: