列表框多选持续报错:VBA代码出现Next Without For错误求助
解决VBA中“Next Without For”错误的问题
嘿,我一眼就发现问题啦!你这段代码里缺少了一个End If,导致VBA无法正确识别For循环的结构,才会抛出“Next Without For”的错误。
具体来说,你在判断If Me.Requirements.Selected(x) Then之后,只闭合了内层的If myVAR = ""的判断,却忘了闭合外层这个判断选中项的If语句。
修正后的完整代码:
Private Sub CommandButton2_Click() myVAR = "" For x = 0 To Me.Requirements.ListCount - 1 If Me.Requirements.Selected(x) Then If myVAR = "" Then myVAR = Me.Requirements.List(x, 0) Else myVAR = myVAR & "," & Me.Requirements.List(x, 0) End If End If ' 补上缺失的End If,闭合外层判断 Next x ThisWorkbook.Sheets("sheet1").Range("v2") = myVAR Me.Hide End Sub
简单说明:
- VBA里每一个
If都必须对应一个End If,嵌套的If要注意层级匹配,确保代码结构完整 - 补上这个缺失的
End If后,VBA就能正确识别For循环的范围,错误也就解决啦
内容的提问来源于stack exchange,提问作者Fiona
相关产品推荐
相关产品推荐

