我想知道我的编码有什么问题,因为我无法结束Microsoft Excel VBA中的do while循环。如果下一行为空白,我希望结束do while循环。

Do While Cells(RowName, 1) <> ""
    Name = Cells(RowName, ColumnName)
    MsgBox Name
    RowName = RowName + 1
Loop

我还是个初学者,请赐教。 MsgBox会不断弹出,并且即使为空也不会结束。

最佳答案

“退出”-您可以在希望停止循环的任何地方使用此命令。

Sub ExitDoSample
    Dim rowname As Integer
    Dim ColumnName  As Integer
    rowname = 1
    ColumnName = 1


    Do While Cells(RowName, 1) <> ""

        Name = Cells(rowname, ColumnName).Value
        If Name = "" Or IsEmpty(Name) Then
            Exit Do
        Else
            MsgBox Name
        End If
        rowname = rowname + 1
    Loop
End Sub

关于excel - 如何在VBA中结束do while循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36928989/

10-10 18:49