用户在VBA中使用列表框

时间:2016-09-27 14:52:33

标签: excel vba excel-vba

这是我在这个论坛上的第一篇文章。我有一个关于VBA,带有列表框的Userforms的快速问题。我的目标是选择两个选项并返回列表框中的名称列表。我附加了示例userform和我将从中选择的示例表。任何帮助将不胜感激。

Worksheet

Current VBA for Userform

Private Sub ListBox1_Click()

Sheets("Trainers1").Range("I2") = ListBox1


End Sub

Private Sub ListBox2_Click()

Sheets("Trainers1").Range("I2") = ListBox2


End Sub

Private Sub ListBox3_Click()

Sheets("Trainers1").Range("I3") = ListBox3

End Sub

Private Sub ListBox4_Change()

.ListBox4 = Sheets("Trainers1").Range("K2:K10")

End Sub

Private Sub UserForm_Initialize()

Dim cnt
Dim cntr As Integer

cntr = Application.WorksheetFunction.CountA(Sheets("Shift Pattern Key").Range("A:A"))
cnt = Application.WorksheetFunction.CountA(Sheets("Training Ratio").Range("A:A"))

For i = 2 To cntr


ListBox2.AddItem Sheets("Shift Pattern Key").Cells(i, 1)

Next i

For i2 = 2 To cnt

ListBox3.AddItem Sheets("Training Ratio").Cells(i2, 1)

Next i2

End Sub

1 个答案:

答案 0 :(得分:0)

您可以遍历表格的各行,并将每行中的值与选定的值进行比较。如果一行中的两个值都与用户选择的值匹配,则可以使用.AddItem方法将员工的名称添加到列表中。