VBA中的列表框修改

时间:2015-06-16 06:39:43

标签: vba listbox word-vba

我在Word中创建了一个Userform,它从Excel工作表导入3列数据,将其插入书签和word文档的名称,并将其保存为pdf。

现在我想在表单中添加一个列表框,以便能够手动添加,修改和删除输入,这些输入通常是从Excel工作表中导入的。

我已经想出如何将3个文本框中的数据添加到3列列表框中,但即使经过数小时的谷歌搜索,我也找不到修改所选数据的好方法。

VB.net具有.selectedItem属性,VBA没有。任何人都可以举个例子来说明如何使用3个文本框的值修改多列列表框?

提前致谢

1 个答案:

答案 0 :(得分:0)

您需要遍历ListBox.Selected并检查它是否为True。获得True后,您可以处理该项目。

示例代码会添加一些包含列的项目,并设置点击事件以运行Selected个项目。

Private Sub ListBox1_Click()
    Dim i As Integer
    For i = 0 To ListBox1.ListCount - 1
        If ListBox1.Selected(i) Then
            Debug.Print ListBox1.List(i, 0)
        End If
    Next i
End Sub

Private Sub UserForm_Initialize()
    ListBox1.AddItem "test"
    ListBox1.AddItem "test1"
    ListBox1.AddItem "test2"

    ListBox1.ColumnCount = 3
    ListBox1.ColumnHeads = True

    ListBox1.List(1, 0) = "change to 1,0"
    ListBox1.List(1, 1) = "change to 1,1"
    ListBox1.List(1, 2) = "change to 1,2"
End Sub
依次单击每个项目后,

带有立即窗口的表单图片

UserForm