簡體   English   中英

如何在循環內執行 if 語句?

[英]How to do an if statement inside a loop?

我在循環中的 if 語句有問題。 每次我嘗試運行它時,它都會給我一個錯誤:

下一個沒有為

Sub CheckDates4()

    Dim count As Integer
    Dim i As Integer
    Dim j As Integer

    count = 0
    i = 2
    j = 24

    For i = 2 To 318
        For j = 46 To 1 Step (-2)
            If Sheet1.Cells(i, j) >= Sheet2.Cells(1, 1) And Sheet1.Cells(i, j - 1) = "Reçu" Then
                count = count + 1
            Next i
        Next j

    End If

    Sheet2.Cells(1, 7) = count

End Sub

任何想法如何解決這一問題?

您的END IF位置錯誤,並且您也交換了NEXTs

For i = 2 To 318
    For j = 46 To 1 Step (-2)
        If Sheet1.Cells(i, j) >= Sheet2.Cells(1, 1) And Sheet1.Cells(i, j - 1) = "Reçu" Then
            count = count + 1
        End If
    Next
Next

您應該首先使用End If關閉If條件。 然后,使用Next j關閉內部For循環。 最后,使用Next i關閉外部For循環。 所以,你的代碼應該是這樣的:

Sub CheckDates4()
    Dim count As Integer
    Dim i As Integer
    Dim j As Integer

    count = 0
    i = 2
    j = 24

    For i = 2 To 318
        For j = 46 To 1 Step (-2)
            If Sheet1.Cells(i, j) >= Sheet2.Cells(1, 1) And Sheet1.Cells(i, j - 1) = "Reçu" Then
                count = count + 1
            End If
        Next j
    Next i

    Sheet2.Cells(1, 7) = count
End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM