Option Explicit
Dim arrayFieldName
Dim arrayEach
Private Sub Command1_Click()
ReDim arrayFieldName(UBound(Split("aaa,dd", ",")) - 1)
arrayFieldName = Split("aaa,dd", ",")
For Each arrayEach In arrayFieldName
MsgBox arrayEach
Next
End Sub
上面的代码是一个新工程中的。可以正确运行
但在我的VB程序中,就不行
老说:少变量或过程,不是过程这是怎么回事啊??
为什么split我的程序中就不能用呢???

解决方案 »

  1.   

    看你的题目分析是错误出现在有Split的行?如果是这样,那么将Split改为 vba.Split 或VBA.Strings.Split 即可
      

  2.   

    Option Explicit
    Dim arrayFieldName() As String
    Dim i As IntegerPrivate Sub Command1_Click()arrayFieldName = Split("aaa,dd", ",")
    For i = 0 To Ubound(arrayFieldName)
    MsgBox arrayFieldName(i)
    Next
    End Sub
      

  3.   

    应当是这句出错ReDim arrayFieldName(UBound(Split("aaa,dd", ",")) - 1)
      

  4.   

    回复人: of123() ( ) 信誉:125  2005-02-17 08:55:00  得分: 0  
    Option Explicit
    Dim arrayFieldName() As String
    Dim i As IntegerPrivate Sub Command1_Click()arrayFieldName = Split("aaa,dd", ",")
    For i = 0 To Ubound(arrayFieldName)
    MsgBox arrayFieldName(i)
    Next
    End Sub
    这就是正解.顶.
      

  5.   

    楼主错误出在ReDim arrayFieldName(UBound(Split("aaa,dd", ",")) - 1)
    split函数赋给一个variant型或者一个数组,不需要重新定义下标
      

  6.   

    不是这个问题是split不能用的问题。有人说是可能在我的工程中少dll文件。但我不知道少什么。用上面朋友的vba.split就行。