|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre actif
![]() Inscription : avril 2003 Messages : 281 ![]() |
Bonjour,
je débute en BO et je pense ne pas avoir compris tous les concepts, alors je pose mon problème qui est surement tout bête (après avoir regardé un peu ailleurs avant). J'ai dans mon univers une date, un montant et un code. Je souhaiterais obtenir un tableau du genre : Année | Total | Montant0 | Montant1 année(date) | somme(montant) | si(code=0) alors somme(montant) | si(code <> 0) alors somme(montant) En gros je veux 2 colonnes qui font la somme du montant selon la valeur du code. Si je laisse la formule : j'obtiens un #CALCUL. Cela fonctionne si dans mon tableau je laisse la colonne code mais je n'en veux pas car je veux tout sur la même ligne. Quelqu'un pourrait il m'indiquer une solution ? Merci. PS : j'ai à disposition la version 5 et 6 de BO (quand la v6 veut fonctionner)
__________________
S'il n'y a pas de solution, il n'y a pas de problème. Moi je dis ça, je dis rien. |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : avril 2007 Messages : 159 ![]() |
Salut,
Ta colonne "code" contient sur chaque ligne soit 0, soit un autre chiffre? Pour le moment tu as : Année | Total | Montant0 | Montant1 | Code et tu voudrais que soit la colonne "Montant0" se remplisse si(code=0) alors somme(montant), soit la colonne "Montant1" si(code<>0) alors somme(montant)? Que veyx-tu dire par "Cela fonctionne si dans mon tableau je laisse la colonne code mais je n'en veux pas car je veux tout sur la même ligne" ? Si tu laisses la colonne code, tu as plusieurs lignes qui apparaissent? |
|
|
00
|
|
|
#3 |
|
Membre actif
![]() Inscription : avril 2003 Messages : 281 ![]() |
Si j'ai
date ; code ; montant 2006 ; 0 ; 100 2006 ; 1 ; 50 2006 ; 0 ; 25 2007 ; 2 ; 33 2007 ; 0 ; 1 je voudrais : date ; montant total ; montant0 ; montantAutre 2006 ; 175 ; 125 ; 50 2007 ; 34 ; 1 ; 33 Ce que j'ai actuellement c'est : date; code ; montant total ; montant0 ; montantAutre 2006 ; 0 ; 125 ; 125 ; 0 2006 ; 1 ; 50 ; 0 ; 50 2007 ; 0 ; 1 ; 0 ; 1 2007 ; 2 ; 33 ; 33 ; 0
__________________
S'il n'y a pas de solution, il n'y a pas de problème. Moi je dis ça, je dis rien. |
|
|
00
|
|
|
#4 |
|
Membre émérite
![]() Inscription : septembre 2006 Messages : 815 ![]() |
essaye de faire =Somme(si (<code> = 0) alors <montant> )
et place tes formules dans des variables ! tu peux aussi utiliser des filtres sur 0... |
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : avril 2007 Messages : 159 ![]() |
Tu peux sortir la colonne "code" de ton tableau.
Il existera ainsi un tableau pour chacun des codes différents. Tu peux ensuite utiliser la Somme à la suite de cela pour chaque tableau, puis les rassembler par la suite. |
|
|
00
|
|
|
#6 |
|
Membre actif
![]() Inscription : avril 2003 Messages : 281 ![]() |
J'avais pas pensé à changer le sens de la formule, mais ca ne marche pas non plus. Ca me met #ERRI.
J'utilise bien des variables. Le problème est dans une variable j'ai l'impression que l'on ne peut utiliser que des données qui sont dans le tableau du rapport et pas des données uniquement dans le fournisseur. Sinon, j'ai pas compris Byrdo. Sortie la colonne, ca veut dire la mettre en "maitre" ? Ensuite faire la somme sur le montant ? Et comment on découpe selon les dates pour prendre la somme... ? je sais pas du tout jouer sur le découpage des cellules...
__________________
S'il n'y a pas de solution, il n'y a pas de problème. Moi je dis ça, je dis rien. |
|
|
00
|
|
|
#7 |
|
Membre du Club
![]() Inscription : avril 2007 Messages : 159 ![]() |
Je parlais effectivement de le passer en maître.
Sinon, en reprenant la formule de bastoonet , et en te servant d'un autre tableau qui récupère tes données : Case "Montant0/2006" =Somme(si (<code> = 0 Et <date=2006> alors <montant> ) Case "MontantAutre/2006" =Somme(si (<code> <> 0 Et <date=2006> alors <montant> ) Case "Montant0/2007" =Somme(si (<code> = 0 Et <date=2007> alors <montant> ) Case "MontantAutre/2007" =Somme(si (<code> <> 0 Et <date=2007> alors <montant> ) Ca marcherait ça? C'est du bricolage, mais ça peut peut-être te convenir. |
|
|
00
|
|
|
#8 |
|
Membre actif
![]() Inscription : avril 2003 Messages : 281 ![]() |
les formules marchent pas dans un tableau simple (je parle sans section, maitre ou autre truc du genre). Ca donne toujous #ERRI car le code n'est pas dans le même tableau.
Je suis en train de voir en découpant les cellues dans tous les sens, en jouant sur la note de maitre, mais pour le moment c'est pas brillant.
__________________
S'il n'y a pas de solution, il n'y a pas de problème. Moi je dis ça, je dis rien. |
|
|
00
|
|
|
#9 |
|
Membre habitué
![]() Inscription : mars 2006 Messages : 111 ![]() |
Salut
Si tu as l'année en maitre, il suffit de rajouter = Somme (montant) dans (<Année>, <code>) ou PourChaque (<Année>, <code>) N'ayant pas B.O. sur mon portable, je ne peux plus tester Pour savoir comment opére B.O. au niveau de l'opération, il suffit de d'aller dans la partie "Transformer en variable" et "afficher dans son contexte". Tu auras ainsi le contexte exact de ta somme. Frédéric |
|
|
00
|
|
|
#10 |
|
Membre actif
![]() Inscription : avril 2003 Messages : 281 ![]() |
Dsl de répondre tardivement.
Avec vos indications, j'ai fini par utiliser l'opérateur "où" : Code :
=Somme(<Montant>) Où (<Code> = 1) + Somme(<Montant>) Où (<Code> = 2) + Somme(<Montant>) Où (<Code> = 3) Bon, j'aurais bien aimé faire un "... où code <> 0" mais ca ne marche pas bizarrement. En tout cas merci, pour mon cas, j'ai ce qu'il me faut.
__________________
S'il n'y a pas de solution, il n'y a pas de problème. Moi je dis ça, je dis rien. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com