Vba 在项目列表上循环,仅显示符合条件的项目
我需要您的帮助来解决我在学习Excel VBA过程中遇到的基本练习。这就是: 有一个过山车列表,其中一列表示过山车的名称,另一列表示过山车的类型。我必须循环列表,直到空单元格,只选择那些过山车,类型为“木制”。sub应该以显示所有过山车名称的消息框结束,该消息框符合我们的“木制”标准(msgbox的每一行都包含一个名称)Vba 在项目列表上循环,仅显示符合条件的项目,vba,excel,Vba,Excel,我需要您的帮助来解决我在学习Excel VBA过程中遇到的基本练习。这就是: 有一个过山车列表,其中一列表示过山车的名称,另一列表示过山车的类型。我必须循环列表,直到空单元格,只选择那些过山车,类型为“木制”。sub应该以显示所有过山车名称的消息框结束,该消息框符合我们的“木制”标准(msgbox的每一行都包含一个名称) 因此,任何人都可以建议新学员如何处理上述问题……?这将在前1000行中运行,其中a列是过山车,b列是过山车类型。你可以把数字1000换成另一个数字,如果你愿意,也可以把它调小
因此,任何人都可以建议新学员如何处理上述问题……?这将在前1000行中运行,其中a列是过山车,b列是过山车类型。你可以把数字1000换成另一个数字,如果你愿意,也可以把它调小
Sub Macro1()
'
Dim Rollers As String
For i = 1 To 1000
If Cells(i, 2) = "Wooden" Then Rollers = Rollers & vbNewLine & Cells(i, 1).Value
If Cells(i, 1) = "" Then MsgBox (Rollers): End
Next i
'
End Sub
我想补充一下巴林蒂的回答。这将使您使用最后一行,而不是硬编码1000
Dim sht As Worksheet
Dim LastRow As Long
Set sht = ThisWorkbook.Worksheets("Sheet1")
LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row
然后你会有一个像这样的循环
For i = 1 To LastRow
Next i
MsgBox Rollers
欢迎你应该知道,你已经向我们展示了你迄今为止所做的尝试,哪些有效,哪些无效。为了澄清@Nelly27281的评论,“为我编写此问题代码”在这里普遍不受欢迎。请发布您尝试过的任何内容,我们将很高兴帮助您学习如何旋转方轮。嗨,先生,很抱歉,谢谢大家,谢谢大家的帮助,但是,msgbox不会出现在算法的末尾…循环后添加msgbox Rollers如果使用我的方法获取要循环的最后一行,则可以排除单元格(i,1)=“”,然后msgbox(Rollers):从循环中结束。