Не компилируется из-за «Далее без For» - PullRequest
0 голосов
/ 01 июня 2018

У меня есть следующий код, но он жалуется (в последнем цикле For), что у меня есть Next без For и поэтому даже не скомпилируется, поэтому я могу отлаживать!

Я предполагаю, что у меня есть некоторые проблемы с направлением, но я даже не могу разобраться в этом, если он не скомпилируется, чтобы начать с!

For Each ck In Screen.ActiveForm
    For Each oCol In OverlapCol
        If oCol = Right(ck.Name, Len(ck.Name) - 2) Then
        ck.Enabled = True
        Exit For
        GoTo TrueCk
        End If
    Next oCol
    For Each aCol In DistAutCol
        If aCol = Right(ck.Name, Len(ck.Name) - 2) Then
        ck.Enabled = True
        GoTo TrueCk
        Exit For
        End If
    Next aCol
    For Each gCol In DistGenCol
        If gCol = Right(ck.Name, Len(ck.Name) - 2) Then
        ck.Enabled = True
        Exit For
        GoTo TrueCk
    Next gCol
    ck.Enabled = False
TrueCk:
Next ck

Я не понимаю: в чем разницачто за кругом до остальных?Почему я получаю эту проблему?

1 Ответ

0 голосов
/ 01 июня 2018

Я бы порекомендовал сделать форматирование с отступами в Ifs следующим образом:

    For Each ck In Screen.ActiveForm
        For Each oCol In OverlapCol
            If oCol = Right(ck.Name, Len(ck.Name) - 2) Then
                ck.Enabled = True
                Exit For
                GoTo TrueCk
            End If
        Next oCol
        For Each aCol In DistAutCol
            If aCol = Right(ck.Name, Len(ck.Name) - 2) Then
                ck.Enabled = True
                GoTo TrueCk
                Exit For
            End If
        Next aCol
        For Each gCol In DistGenCol
            If gCol = Right(ck.Name, Len(ck.Name) - 2) Then
                ck.Enabled = True
                Exit For
                GoTo TrueCk
            End If
        Next gCol
        ck.Enabled = False
TrueCk:
    Next ck

В этом случае вы заметите, что вы забыли добавить End If в последнем If, к сожалению, сообщение компиляторавводить в заблуждение в таких добрых случаях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...