Excel: somme conditionnelle

Résolu/Fermé
salshita Messages postés 10 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 25 juin 2007 - 22 juin 2007 à 15:03
 mizooo - 4 févr. 2009 à 12:48
Bonjour à tous
Je suis nouvelle dans le forum et j'ai un petit souci avec excel.
je suis entrain de créer un document comptable dans excel et je voudrais avec les colonnes suivantes:
A B C
N°Compte Libellé Montant
607 Achats MSES 1000
609 "" 300
631 Frais Banc 750
707 Ventes produits 1500
75 Produits financiers 600

Je voudrais faire la somme de la colonne C en fonction des 2 premiers caractères du N° de compte (colonne A). Exemple faire le total des montants (colonne C) des n° de comptes dont les 2 premiers caractères sont "60" (le nombre de caractères du n° de comptes n'est pas limité).
Je voudrais savoir comment on peut faire cela.
Je vous remercie d'avance.
PS: c'est urgent
A voir également:

9 réponses

Dans la cellule C1, par exemple pour additionner les cellules B1 à B15 si la cellule A1 commence par 60 tu mets:

=SI(GAUCHE(A1;2)="60";SOMME(B1:B15);"")

Voilà.
0
salshita Messages postés 10 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 25 juin 2007
22 juin 2007 à 15:24
Je te remercie
Mais ca ne marche pas chez moi. Au fait je voudrais faire la somme des montants correspondants aux n° de compte dont les 2 premiers caracteres sont "60" par exemple
0
Ok
Mias il faut passer par une étape intermediaire

alors dans les cellules de la colonne C tu mets:

=SI(GAUCHE(A2;2)="60";B2;"")
ce qui ferra apparaitre dans C seulement les chiffres de la B qui satisfont à la condition
Et en bas de la colonne C tu fais la somme(C2:C15)

Essayes
0
salshita Messages postés 10 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 25 juin 2007 > Alain42
22 juin 2007 à 15:38
la formule marche mais c'est pas ce que je veux faire exactement! je me suis mal exprimée:
le but c'est de faire des sous totaux selon les 2 premiers caracteres du n° de compte. Mais là où il y a probleme c'est qu'on peut insérer de nouveaux comptes d'une semaine à l'autre selon les opérations effectuées. Et je veux faire des sous totaux pour par exemple les comptes "60", "61", "75", "28" etc....
Merci de ton aide
0
Alain42 > Alain42
22 juin 2007 à 15:46
Fais alors autant de fois la même opération que celle de la colonne C que tu as de debut différents dans les colonnes D, E, F ....
0
Alain42 > Alain42
22 juin 2007 à 15:50
Ou alors, dans la colonne C à partir d ela ligne 2 tu fais:

=SI(GAUCHE(A2;2)=GAUCHE($C$1;2);B2;"")

et en C1 tu mets soit 60 soit 70 etc.. que tu changes comme tu veux

Attention le $ devant C et 1 est important si tu fais des copies incrémentées.
0
salshita Messages postés 10 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 25 juin 2007
22 juin 2007 à 18:14
Les valeurs à additionner sont dans la colonne B, mais je dois faire la somme selon les n° de compte (colonne A); par exemple, pour tous les comptes dont le n° commence par "51" , ensuite "52" etc.... sachant que pour une semaine on peut avoir 5 comptes dont le n° commence par "51" et 10 la semaine suivante. On peut aussi avoir une nouvelle série de comptes qui commence par "66" par exemple ou "53", ca dépend des opérations de la semaine.
0
Donc tes colonnes devraient se presenter ainsi:

colonne A

N°Compte Libellé Montant
607 Achats MSES 1000
609 "" 300
631 Frais Banc 750
707 Ventes produits 1500
75 Produits financiers 600

colonne B
ligne 2 vide
10 000
20 0000
50 000

etc....


colonne C
ligne1: 60 (valeur que tu peux modifier suivant les totaux que tu veux faire)
ligne 2: =somme(BA2:BA500)

colonne BA
a la ligne 2:

=SI(GAUCHE(A2;2)=GAUCHE($C$1;2);B2;"") que tu recopies en incrémenté (tu sais en cliquant sur la petite croix à droite de la cellule et en glissant jusqu'en ligne 500)

ce qui donne en ligne 3:
=SI(GAUCHE(A3;2)=GAUCHE($C$1;2);B3;"")

etc.. jusqu'à la ligne 500
0
salshita Messages postés 10 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 25 juin 2007
22 juin 2007 à 19:03
JE te remercie, ca marche mais je ne peut pas faire ca pour tous les sous totaux
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Tu n'as pas a refaire ça pour tous les sou totaux, il suffit seulement de modifier la cellule C1, tu rentres 60 ou 71 ou 90 et ça va t'afficher le sous total correspondant.
0
salshita Messages postés 10 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 25 juin 2007
22 juin 2007 à 20:58
Merci mais je dois faire la liaison avec un autre classeur et il faut que chaque sous total apparaisse
0
salshita Messages postés 10 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 25 juin 2007
25 juin 2007 à 14:25
Merci beaucoup
je ne cherchais pas exactement ca mais c'est une bonne alternative.
colonne A

N°Compte Libellé Montant
607 Achats MSES 1000
609 "" 300
631 Frais Banc 750
707 Ventes produits 1500
75 Produits financiers 600

colonne B
ligne 2 vide
10 000
20 0000
50 000

etc....


colonne C
ligne1: 60 (valeur que tu peux modifier suivant les totaux que tu veux faire)
ligne 2: =somme(BA2:BA500)

colonne BA
a la ligne 2:

=SI(GAUCHE(A2;2)=GAUCHE($C$1;2);B2;"") que tu recopies en incrémenté (tu sais en cliquant sur la petite croix à droite de la cellule et en glissant jusqu'en ligne 500)

ce qui donne en ligne 3:
=SI(GAUCHE(A3;2)=GAUCHE($C$1;2);B3;"")

etc.. jusqu'à la ligne 500
0
Cricri d'amour
20 juil. 2007 à 15:54
La solution est plutot simple, il suffisait d'y penser.

Supposons que la ligne 1 soit la ligne de titres, la colonne A contiennent toute une liste de comptes généraux (classes 1 à 9), que la colonne B soit vide et que la colonne C contienne les valeurs de ces comptes. Ensuite taper la formule suivante en cellule B2 : =TEXT(A2;0)

Tirer la formule jusqu'en bas

Et maintenant la solution (il faut absolument que les comptes soient considérés comme du texte) :

=sumif(B:B;"10*";C:C)

Cette formule totalisera la valeur (colonne C) de tous les comptes (colonne B) commençant par 10

Il est possible de transformer "10*" en variable avec concatenate ou bien &
Egalement possible de modifier le 10 ... ou d'affiner le sous-total selon la nature comptable

Et voilà !
0
Bonjour,
J'ai le même problème et apparemment, nous ne somme pas les seul(e)s. la proposition =sumif(b:b;"10*":c:c), c'est bien, mais ce qui intéresse pas mal de monde, c'est de mettre à la place de "10*" ..... Z1, Z2, Z3 etc... et la liste des numéros de compte dans cette colonne Z par exemple.
en gros, faire la somme d'une colonne c:c pour un libellé b:b qui commence par ce qui est listé dans une autre colonne z:z, sans avoir à taper la valeur 10 ou autre dans chaque ligne de formule (on peut avoir + de 400 comptes, avec des libellés textuels différents, mais des numéros communs).
c'est curieux : commence par A1, A2 ou L1C1, L2C1 etc... semble ne pas exister... ou être incompatible avec somme.si.
select... all ... where... like... ça paraît si simple, on n'a pas dû bien chercher. Une idée ?
Merci de votre aide
0