Rechercher : dans
Par :

Boucle pour additionner dans un tableau

Dernière réponse le 14 jun 2008 à 17:50:46 trustpol, le 3 avr 2008 à 13:38:49 
 Signaler ce message aux modérateurs

Bonjour,

je suis novice en macro et j'avais besoin d'une macro

l'objectif de celle-ci était dans un tableau d'additionner les cases de la colonne B lorsque celle de la A était identique

ex
taxi 23
voiture 25
voiture 25
taxi 12

et je veux avoir

taxi 35
voiture 50


Voila le code que j'ai enregistré mais cela ne marche pas


Private Sub CommandButton2_Click()
Range("A2").Select
Do While Not IsEmpty(ActiveCell.Value)
critere = (ActiveCell.Value = ActiveCell.Offset(1, 0).Value)
If critere = True Then
ActiveCell.Offset(0, 1).Value = ActiveCell.Offset(0, 1).Value _
+ ActiveCell.Offset(1, 1).Value
ActiveCell.Offset(1, 1).EntireRow.DeleteShift = xlUp
Else
ActiveCell.Offset(1, 0).Select
End If
Loop
End Sub

en passant par le pas à pas il bloque sur la ligne juste avant le else.


Aidez moi svp Merci d'avance

Configuration: Windows 2003
Internet Explorer 7.0

Meilleures réponses pour « boucle pour additionner dans un tableau » dans :
Trier un tableau sans utiliser la fonction sort VoirTrier un tableau sans utiliser la fonction sort D'abord on initialise une variable $max avec la 1ère valeur de tableau. Ensuite on va faire une boucle tant que le tableau contient encore des éléments. C'est avec la fonction splice qui a le rôle...
Inverser les éléments d'un tableau -Récursivité- VoirVoici une procédure récursive qui permet d’inverser les éléments d’une partie d’un tableau compris entre la position p et n : Procedure Inverser (Var t : Tab; p, n : Integer); Var aux : Real; Begin If p < n Then ...
Décaler les éléments d'un tableau (Rotation) -Récursivité- VoirVoici une procédure récursive qui permet de décaler tous les éléments d’un tableau d’une position à droite à partir de la position p Procedure Decaler (Var t : Tab; p, n : integer); Begin If p
Tableau de bord VoirNotion de tableau de bord Un tableau de bord est une représentation graphique synthétique d'un ensemble d'indicateurs donnant à un responsable tous les éléments lui permettant de prendre visuellement et rapidement des décisions. Compte-tenu de sa...
ADSL - Le dégroupage de la boucle locale VoirIntroduction au dégroupage de la boucle locale On appelle "boucle locale" la partie finale de la ligne téléphonique arrivant à l'abonné. Afin de vous faire profiter de l'internet à haut débit (ADSL), les Fournisseurs d'Accès à Internet (FAI)...
Additionneurs VoirUn additionneur est un circuit capable de faire la somme de plusieurs nombres. Une addition met en oeuvre deux sorties: la somme, généralement notée S la retenue, généralement notée R Lorsque l'on fait une somme en décimal (base 10), on ajoute...

1

Mike-31, le 3 avr 2008 à 14:41:57

Salut,

tu n'a pas besoin de créer une macro pour ce genre de calcul, tout simplement dans ta feuille de calcul tu colles cette formles et la somme sera calulé si la somme colonne A est identique à la somme colonne B

=SI(SOMME(A:A)=SOMME(B:B);SOMME(B:B);"")

si tu doit coller cette formule dans une autre feuille la formule est la même en stipulant le nom de la feuille ici feuil1

=SI(SOMME(Feuil2!A:A)=SOMME(Feuil2!B:B);SOMME(Feuil2!B:B);"")

A+

____________________________________________________________________
Vous cherchiez de l’aide. Les membres du forum, bénévolement étaient à vos côtés.
Ayez la gentillesse de nous dire si votre problème est résolu. Afin de classer la
Demande.

Répondre à Mike-31

2

trustpol, le 3 avr 2008 à 15:00:30

Je crois que tu n'a pas très bien compris ma question. Je veux comparer par rapport à la cellule d'en dessous et

si le texte est le meme alors il faut additionner les deux cellules d'a coté

Merci de ton aide

Répondre à trustpol

3

Mike-31, le 3 avr 2008 à 15:08:44

Regardes cette formule

Private Sub CommandButton1_Click()
Range("A2").Select
Do While Not IsEmpty(ActiveCell.Value)
ActiveCell.Offset(1, 0).Select
Loop
ActiveCell.Offset(-1, 0).Select
If ActiveCell = ActiveCell.Offset(0, 1) Then
ActiveCell.Offset(1, 1).Select
ActiveCell.FormulaR1C1 = "=R[-1]C[-1]+R[-1]C"
End If
End Sub

Répondre à Mike-31

4

edward82, le 14 jun 2008 à 14:09:06

Existe-il une requette mysql pour additionner les cases de la colonne B lorsque celles de la A sont identiques?

ex
taxi 23
voiture 25
voiture 25
taxi 12

et je veux avoir

taxi 35
voiture 50

merci

Répondre à edward82

5

 lermite222, le 14 jun 2008 à 17:50:46

Bonjour,
Tu met la fonction ci dessous par exemple dans D1

=SOMME.SI(A1:A29;"taxi";B1:B30)

et dans D2
=SOMME.SI(A1:A29;"voiture";B1:B30)

A+
L'expérience instruit plus sûrement que le conseil. (André Gide)  

Répondre à lermite222