Public Type TUDT
    lA As Long
    sB As String
End TypeDim tOut(10) As TUDTPublic Property Set aOut(ByVal vData As Object)
    tOut = vData
End Property
Public Property Get aOut() As Object
     aOut = tOut
End Property

解决方案 »

  1.   

    to :hmily_girl(冷冰冰) 
    你说的方法不行啊?
    Public Property Set aOut(ByVal vData As Object)
        tOut = vData
    End Property
    显示不能给数组赋值
    Public Property Get aOut() As Object
         aOut = tOut
    End Property
    显示:“ 只有定义在公共对象模块中的用户定义类型和变体类型相互转换或者传递给后期帮定功能“
    你说VB的限制怎么这么多啊,是不是我必须把自定义类型定义成对象
    然后把数组换成Collection 才行啊?那样子气不是很麻烦
    快被它气死了
      

  2.   

    还是谢谢你,你已经帮我解决不少问题了
    真奇怪VB为什么有这些限制
    我试一试吧,估计,方法也不行,它可能不会让返回自定义类型
    不行我就用对象了,
    要不这个类就不要了,写道form里面好了,想做一些结构优化,这也太烦了
      

  3.   

    你应该在类模块中定义成
    Public Type ColumnInfo
        name As String
        caption As String
        .....
    End Type
    Public m_colInfo() As ColumnInfo
    然后在其他模块中使用时再使用redim重定义数组的最大维数,如:
     redim m_colinfo(35)因为在类模块中不能给动态数组定维数。
      

  4.   

    你应该在类模块中定义成
    Public Type ColumnInfo
        name As String
        caption As String
        .....
    End Type
    Public m_colInfo() As ColumnInfo
    然后在其他模块中使用时再使用redim重定义数组的最大维数,如:
     redim m_colinfo(35)因为在类模块中不能给动态数组定维数。
      

  5.   

    你应该在类模块中定义成
    Public Type ColumnInfo
        name As String
        caption As String
        .....
    End Type
    Public m_colInfo() As ColumnInfo
    然后在其他模块中使用时再使用redim重定义数组的最大维数,如:
     redim m_colinfo(35)因为在类模块中不能给动态数组定维数。
      

  6.   

    to :
    superzwb(野狼) 
    还是不行,显示错误常数,固定长度字符串,数组,用户定义类型,以级declare语句不允许作为对象模块的public成员VB真的好恶心
    我主要是觉得把自定义类型改为对象麻烦才这么做的,sigh//