VBA for next message d'erreur

Bonjour

Je suis en train de m'initier à la fonction "for next" et lorsque j'écris le code suivant, je reçois un message : " erreur de compilation : next sans for "

Sub macroboucle()

'macro pour faire une boucle

Dim i As Integer

For i = 1 To 10 Step 1
    If Worksheets("a").Cells(i, 2) = "ber" Then
    Worksheets("a").Rows(i).Delete
Next i

End Sub

Je ne vois vraiment pas pourquoi, donc ça doit être énorme...

Merci d'avance

Bonjour,

Ne mélange pas les composants : For... Next est une instruction de boucle, non une fonction !

Ensuite il te manque un End If, malgré la signalisation de VBA...

Ne pas se frapper, 2 fois sur 3 au moins la signalisation de ce type d'erreur par BA est erronée, mais il manque bien toujours quelque chose, il faut donc le trouver...

Cordialement.

Merci pour la distinction fonction et instruction...

J'ai rajouté end if et ça marche....2 fois sur 3 !

(j'ai mis 3 fois la condition et elle ne s'est effacée que 2 fois)

Bonjour,

c'est normal.

Si tu fais des suppressions de lignes il boucler en partant du bas vers le haut.

Sinon si tu supprimes la ligne 2, la 3 prend sa place. Le next te fait passer à la ligne 3, mais qui contient la 4 maintenant, l'ancienne ligne 3 n'a donc pas pu être testée.Tu suis ?

Donc :

For i = 10 To 10 Step -1

eric

Re, Salut Eric !

Tu auras appris quelque chose de plus !

Bonne continuation.

Merci à tous les 2.

J'étais en train de comprendre que ça ne supprimait qu'une ligne sur deux quand elles se suivaient, mais pas le pourquoi du comment. C'est si évident quand on a la bonne explication.

Mon problème semble résolu, je vais pouvoir l'appliquer à ma feuille de classement d'escalade en séparant les différents départements.

Bonjour Boris,

Pour passer un sujet en résolu, tu dois faire c'qui est écrit sur le panneau :

cliquer sur le bouton qui est situé près du bouton

dhany

Merci dhany

J'espère que ce coup ci ma discussion est enfin résolue (en tout cas, j'ai appris plein de choses grâce à vos conseils

non, désolé : ça a pas marché ; quand ça marche, tu peux voir un petit rond vert avec une coche, comme ceci :

sujet

normalement, la coche V sur laquelle tu dois cliquer est près du bouton avec un crayon :

c'est celui qui te permet de modifier un message (regarde le coin haut droit d'un post).

dhany

Bonjour

une dernier

Sub MacroBoucle()
'macro pour faire une boucle
Dim L As Long
    With Worksheets("a")
        For L = 10 To 1 Step -1
            If .Cells(L, 2) = "ber" Then .Rows(L).Delete
        Next
    End With
End Sub

A+

Maurice

non, non, t'as toujours pas réussi à mettre en résolu ! lis mon message : https://forum.excel-pratique.com/viewtopic.php?p=653830#p653830

dhany

Avec toutes mes excuses, je croyais que c'était celui qu'on voit en écrivant le dernier message, mais je viens de trouver.

Merci aussi à Archer pour sa contribution. J'ai pas encore bien compris la différence mais je vais me creuser un peu la tête avant de crier à l'aide.

Rechercher des sujets similaires à "vba next message erreur"