Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从excel电子表格中的列填充组合框?_Excel_Combobox_Spreadsheet_Vba - Fatal编程技术网

如何从excel电子表格中的列填充组合框?

如何从excel电子表格中的列填充组合框?,excel,combobox,spreadsheet,vba,Excel,Combobox,Spreadsheet,Vba,我有两个excel电子表格,一个有组合框,另一个有部门名称列表。我需要用部门名称填充组合框。如何实现此目的。以下是VBA代码: Dim vArr as Variant Dim i as Integer vArr = WorksheetFunction.Transpose(Sheets(2).Range("A2:A10").value) With Sheets(1).OLEObjects("ComboBox1").Object .Clear For i = Lbound(vAr

我有两个excel电子表格,一个有组合框,另一个有部门名称列表。我需要用部门名称填充组合框。如何实现此目的。

以下是VBA代码:

Dim vArr as Variant
Dim i as Integer
vArr = WorksheetFunction.Transpose(Sheets(2).Range("A2:A10").value)
With Sheets(1).OLEObjects("ComboBox1").Object
     .Clear
     For i = Lbound(vArr) to Ubound(vArr)
        .AddItem vArr(i)
     Next i
End With
这里是加载组合框最简单的方法,因为您的部门范围不会为空

Private Sub Workbook_Open()
    Sheets(1).ComboBox1.List = Sheets(2).Range("A2:A10").Value
End Sub
或在第1页内:

Private Sub Worksheet_Activate()
    ComboBox1.List = Sheets(2).Range("A2:A10").Value
End Sub

你试过什么吗?:)您需要使用组合框吗?您也可以通过数据验证来实现这一点?如果只有一行的范围,人们将如何实现这一点?我需要将一行中的5个单元格添加到组合框中