Excel 将范围定义为表2列A中的所有数据

Excel 将范围定义为表2列A中的所有数据,excel,vba,Excel,Vba,我的问题是我想将范围定义为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"

我的问题是我想将范围定义为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中的单元格中进行迭代,但忽略在实际单元格中创建的引用


引用
单元格(i,1).Value时,它使用作为
单元格的父级

您正在迭代Sheet2中的单元格,但忽略在实际中创建的引用

当您引用
单元格(i,1).Value
时,它使用作为
单元格的父级

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