Calcul sur des colonnes

emir01

XLDnaute Nouveau
Re-bonjour,
Aprés avoir eu la réponse à mon premier post, je m'aperçois que la formule ne fonctionne plus lorsque je filtre sur une ou plusieurs colonnes. J'aimerais bien connaître la méthode pour que mes calculs se mettent à jour llorsqu'on filtre sur une ou plusieurs colonnes.
Merci d'avance
PS : je joins le fichier Essai 1
 

Pièces jointes

  • essai1.xls
    28.5 KB · Affichages: 69
  • essai1.xls
    28.5 KB · Affichages: 63
  • essai1.xls
    28.5 KB · Affichages: 67

Excel-lent

XLDnaute Barbatruc
Re : Calcul sur des colonnes

Bonjour Emir01

Si j'ai bien compris, tu veux faire la somme des chiffres du zone défini en fonction du(des) filtres posés sur la(les) colonnes alentours?

Si oui, tu peux utiliser la formule =SOUS.TOTAL(9;zone voulu)

Exemple de zone voulu : L9:L50
 

Tibo

XLDnaute Barbatruc
Re : Calcul sur des colonnes

Salut Excel-lent,

J'ai regardé le fichier de emir01 et j'ai bien pensé à cette solution également.

Mais en fait, je pense que émir souhaite en fait un mix avec la fonction SOUS.TOTAL et la fonction SOMMEPROD

Le but est d'obtenir parmi les valeurs filtrées, celles qui correspondent au critère de la colonne B pour pouvoir compléter son tableau H3:K5

Je suis persuadé que c'est possible. Mais on entre là, je pense, dans le domaine des formules très magiques.

Je suis ce fil avec intérêt car j'aimerais voir la solution.

Je vais quand même poursuivre mes recherches.

Bonne soirée

@+
 

patte d'ours

XLDnaute Occasionnel
Re : Calcul sur des colonnes

Un moyen, en passant par VBA

Créer une nouvelle colonne, que j’ai appelée TEST, et que l’on peut éventuellement masquer pour ne pas gêner l’impression

Créer une petite macro, à relier à un bouton sur ta feuille, ou sur un double-clic, etc. En ce qui me concerne, je l’ai fait déclencher par CTRL W

Sub Macro1()
' Macro enregistrée le 07/11/2007 par Chat_ours
'
' Touche de raccourci du clavier: Ctrl+w
Sheets("modif").Select
For i = 9 To 50
Range("O" & i).Select
If ActiveCell.EntireRow.Hidden = True Then
ActiveCell = 0
Else
ActiveCell = 1
End If
Next
End Sub

Cette macro va regarder si les lignes sont masquées, notamment par le filtre. Si oui , la cellule est à 0, sinon elle est à 1.

Il suffit ensuite de modifier les formules SOMMEPROD en rajoutant un 3ème critère. Exemple pour la 1ère cellule :

=SOMMEPROD(($B$9:$B$50="C")*($C$9:$C$50=1)*($O$9:$O$50=1))

On peut bien sûr faire de même pour le 2ème tableau.

Bonne soirée
 

Pièces jointes

  • essai1.xls
    37.5 KB · Affichages: 66
  • essai1.xls
    37.5 KB · Affichages: 62
  • essai1.xls
    37.5 KB · Affichages: 61

emir01

XLDnaute Nouveau
Re : Calcul sur des colonnes

Merci de votre aide.
Excel lent, ta formule fonctionne mais le résultat s'affiche évidemment à chaque fois que je change le filtre. Cela me va bien mais je voudrais savoir pourquoi dans ta formule tu utilises 9 après sous total. Pourquoi 9 et pas un autre chiffre. Il représente le N° de la colonne ou quoi ?
 

skoobi

XLDnaute Barbatruc
Re : Calcul sur des colonnes

Bonsoir le fil,
pour répondre à ta question:

Syntaxe

SOUS.TOTAL(no_fonction;réf1; réf2, ...)

no_fonction représente le nombre compris entre 1 et 11 (comprend les valeurs masquées) ou 101 et 111 (ignore les valeurs masquées) indiquant quelle fonction utiliser pour calculer les sous-totaux d'une liste.

no_fonction
(comprend les valeurs masquées) no_fonction
(ignore les valeurs masquées) Fonction
1 101 MOYENNE
2 102 NB
3 103 NBVAL
4 104 MAX
5 105 MIN
6 106 PRODUIT
7 107 ECARTYPE
8 108 ECARTYPEP
9 109 SOMME
10 110 VAR
11 111 VAR.P

réf1, réf2, représentent les 1 à 29 plages ou références pour lesquelles vous souhaitez un sous-total.

Notes

Si d'autres sous-totaux se trouvent à l'intérieur de la plage définie par les arguments réf1, réf2,... (ou sous-totaux imbriqués), ces sous-totaux imbriqués ne sont pas pris en compte afin d'éviter tout comptage en double.
Pour les constantes no_fonction de 1 à 11, la fonction SOUS.TOTAL comprend les valeurs des lignes masquées au moyen de la commande Masquer du sous-menu Ligne du menu Format). Utilisez ces constantes pour obtenir le sous-total des numéros masqués et non masqués dans une liste. Pour les constantes no_fonction de 101 à 111, la fonction SOUS.TOTAL ignore les valeurs des lignées masquées au moyen de la commande Masquer du sous-menu Ligne du menu Format). Utilisez ces constantes pour obtenir uniquement le sous-total des numéros non masqués dans une liste.
La fonction SOUS.TOTAL ignore toute ligne non comprise dans le résultat d'un filtre, peu importe la no_fonction utilisée.
La fonction SOUS.TOTAL est conçue pour les colonnes de données, ou plages verticales. Elle n'est pas conçue pour les lignes de données, ou plages horizontales. Par exemple, lorsque vous effectuez le sous-total d'une plage horizontale au moyen d'une no_fonction de 101 ou plus, telle que SOUS.TOTAL(109,B2:G2), les colonnes masquées n'influencent pas le sous-total. En revanche, les lignes masquées dans une plage verticale influenceront le sous-total.
Si l'une des références est une référence 3D, la fonction SOUS.TOTAL renvoie la valeur d'erreur #VALEUR.
Exemples

L'exemple sera plus compréhensible si vous le copiez dans une feuille de calcul vide.

Procédure

Créez un classeur ou une feuille de calcul vide.
Sélectionnez l'exemple de la rubrique d'aide. Ne sélectionnez pas les en-têtes des lignes ou des colonnes.


Sélection d'un exemple de l'aide

Appuyez sur CTRL+C.
Dans la feuille de calcul, sélectionnez la cellule A1 et appuyez sur CTRL+V.
Pour passer de l'affichage des résultats à celui des formules permettant de renvoyer les résultats, appuyez sur CTRL+` (apostrophe), ou dans le menu Outils, pointez sur Audit des formules, puis cliquez sur Mode d'audit des formules.

1
2
3
4
5
A
Données
120
10
150
23
Formule Description (résultat)
=SOUS.TOTAL(9;A2:A5) Sous-total de la colonne spécifiée ci-dessus à l'aide de la fonction SOMME (303)
=SOUS.TOTAL(1;A2:A5) Sous-total de la colonne spécifiée ci-dessus à l'aide de la fonction MOYENNE (75,75)
 

Excel-lent

XLDnaute Barbatruc
Re : Calcul sur des colonnes

emir01 à dit:
je voudrais savoir pourquoi dans ta formule tu utilises 9 après sous total. Pourquoi 9 et pas un autre chiffre. Il représente le N° de la colonne ou quoi ?

C'est le point le plus important de la formule. 9 signifie qui fait la somme des valeur restant visible après l'application du(des) filtres.

Mais tu peux aussi faire la moyenne, chercher la plus grande valeur, ...

Voici le tableau des correspondances
1 -> MOYENNE
2 -> NB
3 -> NBVAL
4 -> MAX
5 -> MIN
6 -> PRODUIT
7 -> ECARTYPE
8 -> ECARTYPEP
9 -> SOMME
10 -> VAR
11 -> VAR.P

Me remercie pas, je n'y suis pas pour grand chose ;)
J'ai copié/coller l'aide excel :D

Mais comme je suis intelligent, j'ai amélioré la mise en page LOL

Edit : Excuse moi skoobi, je n'avais pas lu ton post. A+
 

Discussions similaires

Réponses
4
Affichages
376

Statistiques des forums

Discussions
312 487
Messages
2 088 823
Membres
103 971
dernier inscrit
abdazee