Bonjour à tout le forum, ma question va vous paraitre ridicule mais en vba que veut signifi i ou j ex For i, j'essai de décortiquer les codes vba pour progresser "je bidouille un peu les codes, mais sans notion de l'anglais c'est hard"
Merci pour vos réponses, et peut-être un lien pour vraiment comprendre, ce forum m'apporte déjà bcp mais je rame encore.
le i, le j sont des variables de boucle qu'on fait démarrer à jusqu'à
exemple for i=5 to 25 commence à 5 et finit à 25
avec aussi
exemple for j= 1 to 30 step 2 comme à 1 finit à 30 mais en comptant de 2 en 2 donc 1 puis 3 puis 5 etc...
tu peux mettre n'inmporte quoi comme variable
For i=0 to 10, ou For j=5 to 25 veut simplement dire de i = telle valeur aller à telle autre valeur, c'est-à-dire, ici et pour i on va de 0 à 10, ou pour j, on va de 5 à 25.
On aurait pu dire aussi : for PAULUX = 1 to 3, donc PAULUX vaudrait 1 puis 2, et ensuite 3....
On peut aussi y mettre un pas, exemple step 2 ou 3
C'est ce que l'on nomme une boucle. avec for x à y, on fait des calculs de x à y... pas trop facile d'expliquer sans exemple concret.
T'inquiètes pas, c'est plus simple qu'il n'y parrait....
Bonsoir,
For i ou For j, comme tu les appelles, ce sont des boucles, qui comme leur nom indique, boucle d'une valeur minimum à une valeur maximum.
Un exemple tout simple, tu fais ce code :
Code:
Sub boucle()
For i = 5 To 6
MsgBox i
Next i
End Sub
J'ai fait exprès de mettre la valeur minimum à 5, afin de te montrer qu'une boucle de commence pas forcément à 1
Tu verras également souvent une boucle de ce type :
Code:
Sub autre_boucle()
For i = [A65000].End(xlUp).Row To 1 Step -1
If Cells(i, 1).Value = "à supprimer" Then Rows(i).Delete
Next i
End Sub
Une boucle qui part d'une valeur maximum vers une valeur minimun, avec un pas de "-1" (Step -1), donc une espèce de compte à rebours, et qui, dès que la valeur est trouvée, supprime la ligne (ce type de boucle est obligatoire pour des suppressions de lignes)
Bonne soirée, et reviens si tu veux de plus amples informations
Edit, un peu lent ce soir, bonsoir JP, et "un basque"? peut-être????(j'aime pas citer par des chiffres....)
Bonjour et merci à vous 3, bhbh jeanpierre et 46MNO83, voilà c'est bcp plus clair pour moi.
Je fais encore un petit pas en avant avec ce tableur qui me passionne, grace à vous tout le monde peut apprendre et se perfectionner "longue vie à ce forum"
Comme l'on dit mes prédécesseurs, i est une variable, c'est un des points les plus importants du VBA.
Mais tu peux prendre n'importe quelle lettre ou groupe de lettres comme compteur par exemple (en général, on réserve i, j et k pour les boucles de façon à ce qu'en voyant le code, on sache de quoi on parle).
Sinon, lorsque tu commence à faire des macros un peu plus conséquentes avec des routines et sous-routines, il faut déclarer ton i en public au début de procédure.
ex:
Public i as double
Ainsi, si lors d'une boucle, tu es sur la ligne i, et que tu vas faire une autre macro, le fait de mettre i dans ton code, il saura à quoi faire référence .