我有一个列表框,我想将所有值存储在一个数组中

时间:2016-03-02 11:13:01

标签: arrays vba excel-2010

当我点击生成按钮时,它应该将listbox2中的所有值保存到数组中。 然后我想用数组值生成新的Excel文档。

这是我的代码:

   Dim i As Integer

   Private Sub btn_CopyValue_Click()

   For i = 0 To ListBox1.ListCount - 1

     If ListBox1.Selected(i) = True Then ListBox2.AddItem ListBox1.List(i)

     Next i

     End Sub


Private Sub GenerateExcelSheets_Click()
    Dim Size As Integer

    Size = Me.ListBox2.ListCount - 1

    ReDim ListBoxContents(0 To Size) As String

    Dim i As Integer

   For i = 0 To Size
      ListBoxContents(i) = Me.ListBox2.ItemData(i)

    Next i

    For i = 0 To Size
      MsgBox ListBoxContents(i)
    Next i
   End Sub

我不知道为什么它也不起作用......

1 个答案:

答案 0 :(得分:0)

您正在将ItemData(i)放入数组中,因为您从未分配到项目ItemData,您可能意味着要加载项目文本,请更改为:

ListBoxContents(i) = Me.ListBox2.List(i)