我正在尝试将列表中的项目添加到Excel工作表中的某些行。 我试着这样做:
Dim Rand As Long
Dim ws As Worksheet
Set ws = Worksheets("Necmontage")
Rand = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
Range(ws.Cells(Rand, 1), ws.Cells(Rand + necesar.ListCount - 1, 1)).Merge
ws.Cells(Rand, 1) = "K"
Range(ws.Cells(Rand, 2), ws.Cells(Rand + necesar.ListCount - 1, 2)).Merge
ws.Cells(Rand, 2) = "Montage"
Range(ws.Cells(Rand, 3), ws.Cells(Rand + necesar.ListCount - 1, 3)).Merge
ws.Cells(Rand, 3) = comanda.Caption
Dim i As Integer
i = 0
Do While i = necesar.ListCount - 1
ws.Cells(Rand + i, 4) = necesar.List(i, 0)
i = i + 1
Loop
End Sub
它添加了我想要的所有值,除了List中的值(我在那里循环)。我不知道为什么,但它没有采取价值观。对这个问题有什么看法吗?
答案 0 :(得分:2)
您的代码中的意思是:
Do While i <= necesar.ListCount - 1 'instead of =
ws.Cells(Rand + i, 4) = necesar.List(i, 0)
i = i + 1
Loop
顺便说一下,如果程序到达你想要的地方,你可以在调试模式下看到Do While
行的断点。