Boucle avec compteur

Résolu/Fermé
tchernosplif Messages postés 600 Date d'inscription dimanche 8 novembre 2009 Statut Membre Dernière intervention 21 juin 2015 - 25 oct. 2011 à 10:00
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 25 oct. 2011 à 15:18
Bonjour,

Une question toute bête mais qui me prend la tête

voici une boucle VBA, si la cellule active=0 passe à la ligne suivante, si la cellule active=1 écrit "toto" dans la cellule d'à côté et passe à la ligne suivante.

Cette opération est répétée 10 fois. Mais ce que je voudrais faire est ajouter un paramètre pour que la boucle se répète suffisament pour écrire 10 fois "toto".

Pourriez-vous m'aider ?

Sub Macro1()
Dim x As Integer
For x = 1 To 10
If ActiveCell.Value = 0 Then
ActiveCell.Offset(1, 0).Select
ElseIf ActiveCell.Value = 1 Then
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = "toto"
ActiveCell.Offset(1, -1).Select
End If
Next x
End Sub

1 réponse

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
25 oct. 2011 à 14:44
Essaies :
Sub Macro1()
Dim cel As Range
Dim qté As Integer

Set cel = ActiveCell

Do
  If cel.Value = 1 Then
    cel.Offset(0, 1).Formula = "toto"
    qté = qté + 1
  End If
  Set cel = cel.Offset(1)
  If cel.Row = ActiveSheet.Rows.Count Then Exit Do  'sécurité qté de 1 insuffisante
Loop While qté < 10

cel.Select 'si besoin

End Sub

0
tchernosplif Messages postés 600 Date d'inscription dimanche 8 novembre 2009 Statut Membre Dernière intervention 21 juin 2015 244
25 oct. 2011 à 14:54
C'est exactement ça, en plus avec une sécurité !!!

Merci beaucoup Patrice33740
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
25 oct. 2011 à 15:18
De rien, au plaisir de te relire sur le forum

Patrice
0