Boucle et fonction somme
Résolu/Fermé
marilou_271
Messages postés
19
Date d'inscription
samedi 11 août 2007
Statut
Membre
Dernière intervention
26 août 2008
-
17 mars 2008 à 19:40
marilou_271 Messages postés 19 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 26 août 2008 - 18 mars 2008 à 19:59
marilou_271 Messages postés 19 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 26 août 2008 - 18 mars 2008 à 19:59
A voir également:
- Boucle et fonction somme
- Fonction si et - Guide
- Formule somme excel colonne - Guide
- Somme si couleur - Guide
- Fonction moyenne excel - Guide
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
5 réponses
Bonjour,
Je ne comprends pas comment sont organisées tes données
Pourquoi tu fais le test "if cells(ligne, colonne).value = cells(ligne+1, colonne)", je suppose c'est le code fournisseur.
Toutes les lignes ne font-elles pas référence au même fournisseur?
Le total doit il se faire en partiel à chaque ligne ou en cumulé à la dernière ligne?
A+.
Je ne comprends pas comment sont organisées tes données
Pourquoi tu fais le test "if cells(ligne, colonne).value = cells(ligne+1, colonne)", je suppose c'est le code fournisseur.
Toutes les lignes ne font-elles pas référence au même fournisseur?
Le total doit il se faire en partiel à chaque ligne ou en cumulé à la dernière ligne?
A+.
Ivan-hoe
Messages postés
433
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
17 octobre 2008
309
17 mars 2008 à 20:06
17 mars 2008 à 20:06
Bonjour Marilou,
as-tu absolument besoin d'une macro ?
Si tes données sont déjà triées par code fournisseur, un Sous-Total peut te calculer ta somme par fournisseur. (Données/Sous-Total)
Sinon, un tableau croisé dynamique (c'est tout simple à utiliser) ferait aussi vachement bien l'affaire dans ton cas, il me semble.
A suivre...
as-tu absolument besoin d'une macro ?
Si tes données sont déjà triées par code fournisseur, un Sous-Total peut te calculer ta somme par fournisseur. (Données/Sous-Total)
Sinon, un tableau croisé dynamique (c'est tout simple à utiliser) ferait aussi vachement bien l'affaire dans ton cas, il me semble.
A suivre...
marilou_271
Messages postés
19
Date d'inscription
samedi 11 août 2007
Statut
Membre
Dernière intervention
26 août 2008
17 mars 2008 à 20:09
17 mars 2008 à 20:09
Non je pense pas mais le souci c'est que j'ai un fichier par jour sur 9 semaines
j'aimerai par la suite déterminer un volume moyen, min, max et une fréquence de livraison
Ca m'paraissait l'idéal...Non
Et j'aurais utilisé le croisé dynamique pour le final...
Mais je ne suis pas très douée lol
alors peut être as tu la solution ??
j'aimerai par la suite déterminer un volume moyen, min, max et une fréquence de livraison
Ca m'paraissait l'idéal...Non
Et j'aurais utilisé le croisé dynamique pour le final...
Mais je ne suis pas très douée lol
alors peut être as tu la solution ??
Ivan-hoe
Messages postés
433
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
17 octobre 2008
309
17 mars 2008 à 21:53
17 mars 2008 à 21:53
Marilou,
un joli petit tableau croisé dynamique te calculera tes moyennes, tes mini et maxi, et plus si affinité. Douée ou pas douée, ça sera toujours plus simple que des macros. Au pire, ça nécessitera un peu de mise en forme dans tes données de base. As-tu besoin d'aide dans ce sens ?
I.
un joli petit tableau croisé dynamique te calculera tes moyennes, tes mini et maxi, et plus si affinité. Douée ou pas douée, ça sera toujours plus simple que des macros. Au pire, ça nécessitera un peu de mise en forme dans tes données de base. As-tu besoin d'aide dans ce sens ?
I.
marilou_271
Messages postés
19
Date d'inscription
samedi 11 août 2007
Statut
Membre
Dernière intervention
26 août 2008
17 mars 2008 à 23:44
17 mars 2008 à 23:44
Bonjour,
merci, mais oui effectivement je m'y coné peu dans ce genre de tableau non...:-(
je ne savais même pas que l'on pouvait effectuer des calculs...lool
merci, mais oui effectivement je m'y coné peu dans ce genre de tableau non...:-(
je ne savais même pas que l'on pouvait effectuer des calculs...lool
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
17 mars 2008 à 22:05
17 mars 2008 à 22:05
nonjour,
Il faut une variable pour faire la somme:
Sub calcul()
Dim somme As Double
somme = 0
ligne=4
colonne=2
while (cells(ligne, colonne)<>0)
if cells(ligne, colonne).value = cells(ligne+1, colonne) then
cells(ligne, colonne+11).Value = somme + cells(ligne, colonne+8)
...
;o)
polux
Il faut une variable pour faire la somme:
Sub calcul()
Dim somme As Double
somme = 0
ligne=4
colonne=2
while (cells(ligne, colonne)<>0)
if cells(ligne, colonne).value = cells(ligne+1, colonne) then
cells(ligne, colonne+11).Value = somme + cells(ligne, colonne+8)
...
;o)
polux
marilou_271
Messages postés
19
Date d'inscription
samedi 11 août 2007
Statut
Membre
Dernière intervention
26 août 2008
17 mars 2008 à 23:50
17 mars 2008 à 23:50
Bonjour polux,
j'ai testé mais la macro plante....:-(
j'suis noyée, ça fait déjà un ti bout de temps que j'essaie mais je crois que le vba n'est pas fait pr moi lol
j'ai testé mais la macro plante....:-(
j'suis noyée, ça fait déjà un ti bout de temps que j'essaie mais je crois que le vba n'est pas fait pr moi lol
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
J'ai élaboré cette macro en partant du principe que le code fournisseur en ligne 4 colonne2 servait de comparaison pour toutes les autres cellules de la colonne 2
Si le code Fournisseur est égal à celui de l 4 c 2 alors e l'ajoute aux quantités précédents et le total partiel est en colonne 11. Le dernier code fournisseur de la colonne contient le total cumulé.
Voila la macro
Sub calcul()
Dim ligne As Integer, colonne As Integer
Dim total As Double
ligne = 4
colonne = 2
total = Cells(ligne, 10).Value
Cells(ligne, 11).Value = total
ligne = ligne + 1
While (Cells(ligne, colonne).Value <> 0)
If Cells(4, colonne).Value = Cells(ligne, colonne) Then
total = total + Cells(ligne, 10).Value
Cells(ligne, 11).Value = total
End If
ligne = ligne + 1
Wend
End Sub
Dis moi si j'ai bien compris ou reformule ton problème
A+.
J'ai élaboré cette macro en partant du principe que le code fournisseur en ligne 4 colonne2 servait de comparaison pour toutes les autres cellules de la colonne 2
Si le code Fournisseur est égal à celui de l 4 c 2 alors e l'ajoute aux quantités précédents et le total partiel est en colonne 11. Le dernier code fournisseur de la colonne contient le total cumulé.
Voila la macro
Sub calcul()
Dim ligne As Integer, colonne As Integer
Dim total As Double
ligne = 4
colonne = 2
total = Cells(ligne, 10).Value
Cells(ligne, 11).Value = total
ligne = ligne + 1
While (Cells(ligne, colonne).Value <> 0)
If Cells(4, colonne).Value = Cells(ligne, colonne) Then
total = total + Cells(ligne, 10).Value
Cells(ligne, 11).Value = total
End If
ligne = ligne + 1
Wend
End Sub
Dis moi si j'ai bien compris ou reformule ton problème
A+.
marilou_271
Messages postés
19
Date d'inscription
samedi 11 août 2007
Statut
Membre
Dernière intervention
26 août 2008
18 mars 2008 à 19:59
18 mars 2008 à 19:59
Bonjour,
Désespérée, j'ai cessé les macros merci à tous !
Je me suis lancée dans les tableaux croisés dynamiques et bien sur j'ai bidouillé...C'est ça lorsque l'on est pas douée !!!
Encore merci à tous !!
Marilou
Désespérée, j'ai cessé les macros merci à tous !
Je me suis lancée dans les tableaux croisés dynamiques et bien sur j'ai bidouillé...C'est ça lorsque l'on est pas douée !!!
Encore merci à tous !!
Marilou
17 mars 2008 à 20:04
Oui c'est organisé ainsi
code fournisseur ; nom ; etc..colonne J les quantités
je voudrais calculer les quantités par fournisseur en ligne J
if cells(ligne, colonne).value = cells(ligne+1, colonne).value
car tant que c'est le même code fournisseur, je voudrais qu'il prenne en compte dans la somme la quantité
Suis-je clair ? lol
Pas évident !
Merci