Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[Résolu] Incrémenter un nombre dans celulle suivante

  • Initiateur de la discussion Initiateur de la discussion Lone-wolf
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Lone-wolf

XLDnaute Barbatruc
Bonjour à tous,

j'aimerais obtenir ce résultat:

si celulle A1 = 10; A2 vas de 11 à 20; A3 de 21 à 30 etc. c'est comme un compteur au faite.

Pour l'instant j'ai ceci:

Sub Test()
Dim x As Integer, i As Integer, t As Double
For x = 1 To 10
i = i + 1
Range("A1").Value = i
If Range("A1").Value = 10 Then: Range("A65536").End(xlUp).Offset(1, 0).Value = i
t = Timer + 0.5: Do Until Timer > t: DoEvents: Loop
Next
End Sub

A2 affiche la valeur 10 sans continuer l'incrémentation.


A+ 😎
 
Dernière édition:
Re : Incrémenter un nombre dans celulle suivante

Salut Lone-wolf et le forum
A2 affiche la valeur 10 sans continuer l'incrémentation.
Aucune raison qu'il continue, puisque la macro s'arrête, i à atteint sa valeur maximale.

Juste une remarque : vu ton "ancienneté", tu devrais avoir compris que pour avoir une aide adéquate, il faut donner le but final de la macro.

Pas sûr de comprendre le problème : tu veux faire des cellules qui agissent comme un compteur avec unité en A1, dizaine en A2, centaine en A3, etc. ?
fait ta boucle de 0 à ton nombre max et utilise des instructions dans le style :
Code:
[A1]=i mod 10
A+
 
Re : Incrémenter un nombre dans celulle suivante

Bonjour Lone-Wolf, Gorfael, le forum,

Si j'ai bien compris ta demande, essaie ceci :

Code:
Sub Test()
Dim t As Double
Dim rg As Range

Set rg = Range("A60000").End(xlUp)

Do
t = Timer + 0.5: Do Until Timer > t: DoEvents: Loop
If (rg Mod 10 = 0) Then
    Set rg = rg.Offset(1, 0)
    rg = rg.Offset(-1, 0) + 1
Else
    rg = rg + 1
End If
Loop Until rg.Row = 20      'pour arrêter le code... à adapter

End Sub

A+
 
Re : Incrémenter un nombre dans celulle suivante

Bonjour Gorfael,

Non. Je te montre le premier code que j'ai fait.

Code:
Sub Test()
Dim x As Integer, i As Integer, t As Double
For x = 1 To 10
    i = i + 1
     [A1].Value = i
If [A1].Value = 10 Then: [A2].Value = i
t = Timer + 0.5: Do Until Timer > t: DoEvents: Loop
  Next
  
For j = 1 To 10
k = k + 1
[A2].Value = i
If [A2].Value = i Then: [A2].Value = i + k
t = Timer + 0.5: Do Until Timer > t: DoEvents: Loop
    Next
End Sub

A + 😎
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
915
Réponses
4
Affichages
735
Réponses
2
Affichages
528
Réponses
11
Affichages
408
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…