【发布时间】:2010-10-25 08:25:19
【问题描述】:
我有一个带有几个组合框的表单。第一个组合框根据 Excel 工作表中的每一行添加项目。
Public Sub FetchExcelValues(ByVal ControlType As String, ByVal control As Object, ByVal xlApp As Object, ByVal xlWorkBook As Object, ByVal xlWorkSheet As Object, ByVal column As String, ByVal row As Integer)
Dim iTeller = row
Dim tekst As String
Do
tekst = xlWorkSheet.Cells(iTeller, column).Value
If tekst <> "" Then
If ControlType = "Tekstboks" Then
control.text = tekst
End If
If ControlType = "Combobox" Then
control.Items.Add(tekst)
End If
If ControlType = "Label" Then
control.text = tekst
End If
End If
iTeller = iTeller + 1
Loop Until tekst = ""
End Sub
这基本上读取指定列中的每个单元格,直到它碰到一个空白单元格。然后它获取每个单元格的值并将其作为项目添加到第一个组合框中。 现在,我希望代码接下来要做的是从此组合框中获取所选项目并在另一个工作表中查找匹配项。当它找到一个匹配的单元格时,它应该从与匹配项相同的行的 B 列中获取值。也可能有多个匹配项,因此每次找到匹配项时,我都想获取同一行的 B 列的值,并将其作为项目添加到第二个组合框中。
实现这一目标的最佳方法是什么?
【问题讨论】:
-
您可能想要创建一个数组,然后再次执行上述循环;而不是添加到组合框,将其添加到数组中,最后将数组添加到组合框。
标签: vb.net compare worksheet excel