Forum Clubic

2048 sur excel vba

Bonsoir, j’ai un projet qui consiste a créer un 2048 sous excel VBA

Je cherche le déplacement à gauche avec des boucles For et if

j’ai deja le déplacement à droite,

Sub droite()

For i = 4 To 7
For j = 2 To 4
If Cells(i, j + 1) = 0 Then
Cells(i, j + 1) = Cells(i, j)
Cells(i, j) = “”
Else
If Cells(i, j + 1) = Cells(i, j) Then
Cells(i, j + 1) = Cells(i, j + 1) * 2
Cells(i, j) = “”
End If
End If
Next j
Next i
generer
end sub

pour le déplacement à gauche, j’ai fais ca :

Sub gauche()

For i = 4 To 7
    For j = 3 To 5
        If Cells(i, j - 1) = 0 Then
            Cells(i, j - 1) = Cells(i, j)
            Cells(i, j) = ""
        Else
            If Cells(i, j - 1) = Cells(i, j) Then
                Cells(i, j - 1) = Cells(i, j - 1) * 2
                Cells(i, j) = ""
            End If
        End If
    Next j
Next i
        generer

End Sub

je pense que pour que la macro marche, il faudrait que j’inverse “For j= 3 to 5” en “For f=5 to 3”

Mais quand je fais ca, rien ne se passe .

comment puis-je arranger le problème ?

Je suis en apprentissage de programmation de base, donc je cherche pas un truc de fou …
merci en avance, bonne soirée

Normal.
5 est plus grand que 3, donc la boucle ne se fait pas.

La syntaxe complète d’une boucle for c’est for … to … step …
step donne l’incrément pour passer d’une valeur à la suivante.
Pour que ta boucle s’effectue dans le sens 5 vers 3, il faut que tu précises step -1
Edité le 11/12/2015 à 09:14

Bonjour merci pour la réponse, je ne connaissais pas le reste de la commande !
Bonne journée

Bonjour,
J?ai utilisé la solution de Gcc mais cela ne fonctionne pas pour mon cas. Je ne sais pas si c?est le cas pour lefandacdc. Je suis preneur pour toutes autres solutions. Merci pour votre aide.