Probleme Algorithme simple en VBA

cs_ratp Messages postés 23 Date d'inscription vendredi 20 février 2004 Statut Membre Dernière intervention 1 octobre 2007 - 1 oct. 2007 à 09:54
JM247L Messages postés 443 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 1 mars 2011 - 1 oct. 2007 à 18:38
RATP

Je dois faire un petit programme sous VBA pour Excel pour le boulot et je galere depuis trois jours.

Ca parrait super simple mais il y a un truc qui bloque. J'explique ce que je veux faire:

J'ai une colonne

J'ai une colonne A Excel dans laquelle j'ai une longue serie de nombres
exemple

Colonne A

2

2

2

5

5

6

6

6

7

7

7

7

8

7

7

5

5

5

et je veux que dans la colonne B s'affiche le nombre de chiffres identiques
a la suite de la colonne A

En image cela donne:

Colonne A    Colonne B

2                       

2

2                        3

5

5                        2

6

6

6                        3

7

7

7

7                        4

8                        1

7

7                        2

5

5

5                        3

4 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
1 oct. 2007 à 10:21
Amical Bonjour à toi aussi,




    >>Ca parait super simple
       quand on sait faire !

    >>et je veux
       quand on veut.. on peut

    >>mais il y a un truc qui bloque
       et c'est quoi, ce truc qui bloque ?   parce que je sais lire
       les lignes de la main ( c'est ici ), mais il faut les décrire.
       avec un code, c'est pareil, parce que tu n'as pas de bol,
       j'ai cassé ma hier,  je ne vois plus aucune erreur sans source.

    >>sous VBA pour Excel
       ah ? mais ici, tu es dans un bar, où on essentiellement
       pas dans le forum adapté à VBA où tu aurais plus de réponses peut-être...




<hr />                Merci beaucoup pour ta question            Bul         [mon Site]     [M'écrire]
<hr />                on ne dit pas "pas de bol", mais "pénurie de récipients"
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
1 oct. 2007 à 12:39
C'est déplacé...









<hr />
-My Blog-
0
Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
1 oct. 2007 à 15:09
Pas besoin de VBA pour faire ceci (je sais, c'est mon dada les formules EXCEL ^^). Tu as juste besoin de deux colonnes pour le faire (enfin, 3 avec la liste des chiffres). Allez, je détaille :

Colonne A, tes chiffres :
A1: Liste
A2: 2
A3: 2
A4: 2
A5: 5
A6: 3
A6: 3

Colonne B, des additions pour faire la somme de tes nombres qui se suivent (colonne qui sera à masquer le cas échéant) :
B1: Additions
B2: =SI(SI(A2=A1;1;"Début")="Début";1;SI(A2=A1;1;"Début")+B1)
Je mets "Début" dans la formule, juste par convention, ça pourrait être n'importe quoi. ca représente en fait si la ligne est la première ligne d'une suite.

Colonne C, qui présente l'affichage
C2: =SI(B3=1;B2;"")
Plus qu'à copier la formule sur toutes les lignes et hop là, tu obtiens ton résultat (on doit pouvoir encore regrouper la colonne B et la colonne C, mais j'ai pas le courage de le faire (j'ai essayé, j'ai un #VALEUR quelque part, et la formule devenant assez lourde à relire, et ayant autre chose à faire que chercher ça, je laisse tomber et garde 2 formules )

Je te laisse le plaisir de détailler ce que font les deux formules, c'est comme ça qu'on apprend ^^

Sinon, pour le faire en VBA, bah ... faut faire une boucle sur la plage, défiler les cellules avec Cells(i,1).value et comparer avec Cells(i-1,1).value et sommer dans une variable pour alimenter Cells(i-1,2).value avec le résultat de la seomme si le chiffre est différent.

Molenn
0
JM247L Messages postés 443 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 1 mars 2011 2
1 oct. 2007 à 18:38
Bonsoir,
Sinon en fonction excel simple il y a "Sous Totaux" option "Nombre"
qui fera très exactement ce que tu représentes dans la partie image de ton post

Mais on peut aussi faire du code mais ça tu trouveras plétore d'exemples sur ce site ou on a une habitude d'une désuétude Hérodienne mais qui à malgrès tout un certain charme, c'est de dire bonjour ... Au Revoir et Merci à la dame  

 Cliquer "Réponse Acceptée"
JML - Partageons Notre Savoir & Nos Acquis
0
Rejoignez-nous