For loop, который не работает так, что ни одна не дает ошибку также

Я сделал тест с этой Sub, но когда я составляю, он ничего не делает. Кроме того не dá ни одна ошибка. Тогда я не знаю, как делать, чтобы составлять ее.

Они могут помогать мне?

Public Sub calculerScore()

Dim colonne, ligne, ligne_referencej, colonne_reference, score_reponse As Integer

colonne = 1
ligne = 1
ligne_reference = 1
colonne_reference = 1
For colonne = 1 To colonne = 8
    For ligne = 1 To ligne = 8
        If Cells(ligne, colonne).Value >= Cells(ligne_reference, colonne_reference).Value Then
            Cells(ligne + 10, colonne + 10).Value = 1
        Else
            Cells(ligne + 10, colonne + 10).Value = 0
        End If
        Next ligne
        ligne_reference = ligne_reference + 1
    Next colonne
colonne_reference = colonne_reference + 1
End Sub
1
задан 04.01.2017, 20:07
0 ответов

Кажись, что твоя ошибка эта в следующих линиях:

For colonne = 1 To colonne = 8
    For ligne = 1 To ligne = 8

После To, когда ты помещаешь colonne = 8 и ligne = 8, то, что ты делаешь, состоит в том, чтобы распределять ему стоимость в переменную, ты говоришь составителю, что он повторяет эту переменную с тех пор, как он будет стоить 1 до тех пор, пока он не будет стоить 8, или ожидание говорит, что составитель здесь уже ты помещаешь ему стоимость 8 colonne = 8, уже стой 8, тогда уже закончите цикл For

Чтобы упорядочивать твою одинокую деталь ты должен снимать ассигнование, оставлять стоимость одинокие 8.

Нужно упоминать, что код составляет correctametne, хотя он не делает того, что ты ждешь, но составь, потому что ты можешь помещать ассигнование в эту часть цикла for, поместив ассигнование в runtime сначала он распределяет ему стоимость в переменную после берет переменную как то, что является стоимостью, с новой стоимостью, которая уже у него есть.

Пример:

у меня могут быть переменные inicio = 0 и переменная fin = 10:

for i = inicio To fin

что был бы эквивалентом, который было бы нужно иметь

for i= inicio to fin = 10

или

for i = 0 to 10

Привет.

2
ответ дан 03.12.2019, 17:52

Смени твой код на этот, подробно опиши, что я изменил инструкции For:

Public Sub calculerScore()

Dim colonne, ligne, ligne_referencej, colonne_reference, score_reponse As Integer

colonne = 1
ligne = 1
ligne_reference = 1
colonne_reference = 1
For colonne = 1 To 8
    For ligne = 1 To 8
        If Cells(ligne, colonne).Value >= Cells(ligne_reference, colonne_reference).Value Then
            Cells(ligne + 10, colonne + 10).Value = 1
        Else
            Cells(ligne + 10, colonne + 10).Value = 0
        End If
        Next ligne
        ligne_reference = ligne_reference + 1
    Next colonne
colonne_reference = colonne_reference + 1
End Sub
2
ответ дан 03.12.2019, 17:52