VC 很简单:
const TCHAR cz_arrNames[10][50] = {
    "小岗","小红","效力","张明","王武","","","","","" }VB呢?
dim names(10) as string
然后呢?

解决方案 »

  1.   

    names(0)="小岗"
    names(1)="小红"names(2)="张明"
    ......
      

  2.   

    Private Sub Form_Load()
    Dim names
    names = Array("小岗", "小红", "效力", "张明", "王武", "", "", "", "", "", "")
    MsgBox names(2)
    End Sub
      

  3.   

    Dim names(0 To 10, 0 To 50)  As String
    names(0, 0) = "小岗"
    names(0, 1) = "小红"
    names(0, 2) = "效力"
    names(0, 3) = "张明"
    names(0, 4) = "王武"
    MsgBox names(0, 1)
      

  4.   

    Array 函数返回一个包含数组的 Variant。语法Array(arglist)所需的 arglist 参数是一个用逗号隔开的值表,这些值用于给 Variant 所包含的数组的各元素赋值。如果不提供参数,则创建一个长度为 0 的数组。说明用来表示数组元素的符号由变量名、圆括号以及括号中的所需元素的索引号组成。在下面的示例中,第一条语句创建一个 Variant 的变量 A。第二条语句将一个数组赋给变量 A。最后一条语句将该数组的第二个元素的值赋给另一个变量。Dim A As Variant
    A = Array(10,20,30)
    B = A(2)使用 Array 函数创建的数组的下界总是 0。这和其它类型的数组不同,它不受 Option Base 语句指定的下界的影响。注意   没有作为数组声明的 Variant 也可以表示数组。除了长度固定的字符串以及用户定义类型之外,Variant 变量可以表示任何类型的数组。尽管一个包含数组的 Variant 和一个元素为 Variant 类型的数组在概念上有所不同,但对数组元素的访问方式是相同的。
      

  5.   

    该示例使用 Array 函数来返回一个包含 Variant 的数组。Dim MyWeek, MyDay
    MyWeek = Array("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun")
    '返回值假设下界的设置为 1(使用 Option Base
    ' 语句)。
    MyDay = MyWeek(2) 'MyDay 的值为 "Tue"。
    MyDay = MyWeek(4) 'MyDay 的值为 "Thu"。
      

  6.   

    我正在试。
    好像没全说清楚:我在Excel VBA中。
    我采用了 Array 的方式:
    Option Explicit
    dim names
    Sub Init(0
        With ThisWorkbook.Worksheets("Sheet1")
            names = Array( _
                       "xiaohong", _
                       "xiaoli", _
                       "xiaozhang" _
                   )
        End With
    End Sub
    好像不行
      

  7.   

    Sub sda()
    Dim names()    
            names = Array( _
                       "xiaohong", _
                       "xiaoli", _
                       "xiaozhang" _
    )
    MsgBox (names(1))
    End Sub
      

  8.   

    Option Explicit
    Dim names
    Sub Init()
        With ThisWorkbook.Worksheets("Sheet1")
            names = Array( _
                       "xiaohong", _
                       "xiaoli", _
                       "xiaozhang" _
                   )
        End With
        MsgBox (names(0))
    End Sub你的可以 在宏下调试通过了
      

  9.   

    很好!试通了。要感谢最先回答的“northwolves(野性的呼唤)”和各位大虾。
    另外,这种办法是动态分配数组个数的,如何获得数组的有效个数呢?
      

  10.   

    Private Sub Form_Load()
    Dim names
    names = Array("小岗", "小红", "效力", "张明", "王武", "", "", "", "", "", "")
    MsgBox UBound(names)
    End Sub
      

  11.   

    VB没有办法赋初值,这是很郁闷的。不过我还是喜欢VB
      

  12.   

    Option Base 1                          '设置下标
    Private Sub Form_click()
      Dim names
      '赋值
      names = Array("小明", "小红", "效力", "张明", "王武", "", "", "", "", "", "")
      '通过Ubound()函数计算上界
      i = UBound(names)
      For j = 1 To i
        Print names(j)
      Next
    End Sub
      

  13.   

    Option Base 1                          '设置下标
    Private Sub Form_click()
      Dim names
      '赋值
      names = Array("小明", "小红", "效力", "张明", "王武", "", "", "", "", "", "")
      '通过Ubound()函数计算上界
      i = UBound(names)
      For j = 1 To i
        Print names(j)
      Next
    End Sub
      

  14.   

    用  Array  函数 
    还可以用循环一个一个赋值