将Sheet2中的所有数据定义为coumn A中的范围

我的问题是我想定义范围为sheet2列A中的所有数据。 下面的代码显示活动工作表的A列中的数据。 我也试过Sheet2.Range,这是行不通的。

Private Sub UserForm_Initialize() Dim i As Single Dim c As Range ManufacturersList.Clear 'Make sure the Listbox is empty i = 1 For Each c In Sheets(2).Range("A1", Sheets(2).Range("A" & Rows.Count).End(xlUp)) ManufacturersList.AddItem Cells(i, 1).Value i = i + 1 Next 

您正在迭代Sheet2中的单元格,但忽略实际的.AddItem方法中创build的引用。

 For Each c In Sheets(2).Range("A1", Sheets(2).Range("A" & Rows.Count).End(xlUp)) ManufacturersList.AddItem c.Value Next 

当您引用Cells(i, 1).Value它将使用ActiveSheet属性作为Cells的父级。