假设有如下的字符串内容(string_a):
abcd  dead  dafdf as
dsfa sadf ad 
dfa dfsa f
dfas dfsa dsa dfsa df我先把它用split(string_a,vbcrlf)将每行的内容保存到一个数组mystringarray1()中,下一步我想把每一行的内容再用split函数分割到另外一个数组中。 如mystring2=split(mystringarray1(2)," "),这个时候老是编译出错,提示:不能对数组赋值。 我将mystringarray1(2)先赋值给另外一个字符串变量string_other,然后再split(string_other," ")也还是不行。把头都搞大了!我是vb新手,请大家指点下。

解决方案 »

  1.   

    Dim mystring2() As String
      

  2.   

    感谢两位的快速响应。
    我发现问题出在 Dim mystring2() As String 上面。
    因为我已经在调试的时候看到mystringarray1(2)也就是第三行被空格split后需要的数组元素个数为3,所以我提前定义mystring2为:Dim mystring2(2) As String  这样就出错了。 就算我 mystring2定义的更大些,也是一样的出错。结论是:用split函数前不能定义目标数组的元素个数。请大家检验是不是同样的结果?
      

  3.   

    Private Sub Command1_Click()
    Dim a As String
    Dim b(1000) As String
    a = "adsfaf   dsafl dfsal fdsalfasd flds dsalfsa ldalsfals dsafl dsafla fdasl fdasldasfa adffd"
    b = Split(a, " ")
    End Sub
      

  4.   

    不能给数组赋值,可赋给一个Variant,此Variant 包含数组.例如
    Private Sub Command1_Click()
    Dim a As String
    Dim ba = "adsfaf  dsafl dfsal fdsalfasd flds dsalfsa ldalsfals dsafl dsafla fdasl fdasldasfa adffd"b = Split(a, " ")
    For i = 0 To UBound(b)
    MsgBox b(i)
    Next
    End Sub