0
在Excel VBA中執行反向循環,查找某個列中最後一個已填充的單元格。一旦找到,它應該退出循環,但退出For不工作,並繼續循環回來。有任何想法嗎?'退出'不起作用
rewind:
' so we 're still "under", rollback to the right line
While Not Range("I" & a).Value = getsum
a = a - 1
On Error GoTo TryCatch
If Not Range("E" & a).Value = "" Then
Rows(a).Select
currfield = Range("E" & a).Value
runningstrsum = runningstrsum - currentstrsum 'we're switching streets
' and since we just lost currentstrsum, we have to reset it to the last one, yay
For c = a - 1 To 2 Step -1
If Not Range("E" & c).Value = "" Then 'there it is
currentstrsum = Range("E" & c).Value
Exit For
End If
Next c
End If
Wend
If overunder < 0 Then 'go back to overunder<
GoTo goodjobunder
ElseIf overunder = 0 Then
GoTo goodjobeven
End If
偉大的答案,無需環路找到最後一個單元格。作爲附註,您可以通過設置「標誌」來告訴進程何時退出其他循環,從而退出多個循環。在這裏搜索應該會產生多個結果。 – Kyle
你也可以使用帶有標籤的'GoTo'語句 - 但如果沒有正確使用,會導致比循環更多的困惑:) –