Moyennes et écartype avec des données supprimées
Page modifiée le 15/09/2012
Utilise cette fonction. Elle simule une fonction Sous.Total mais fonctionne avec des données supprimées. Pour supprimer tes données, applique simplement un format barré.
Function CalcValide(typerep, target) As Double
Macro élaborée par GeeDee
1 MOYENNE
2 NB
3 NBVAL
4 Max
5 Min
6 PRODUIT
7 ECARTYPE
8 ECARTYPEP
9 SOMME
10 Var
11 Var.P
Dim tblcel()
Dim matval As Variant
Application.Volatile
nbcel = 0
nbvaleur = 0
letotal = 0
For Each cell In target.Cells
'ici on peut prendre écrire une autre condition : italique , rouge, souligné etc...
If cell.Font.Strikethrough = False Then
'if cell.entirerow.hidden=false then ' pour simuler un filtre
If IsNumeric(cell.Value) Then
nbvaleur = nbvaleur + 1
letotal = letotal + cell.Value
ReDim Preserve tblcel(nbvaleur)
tblcel(nbvaleur) = cell.Value
End If
nbcel = nbcel + 1
End If
Next
Select Case typerep
Case 1 '----------------- moyenne
CalcValide = letotal / nbvaleur
Case 2 ' ---------------- nbval
CalcValide = nbvaleur
Case 3 ' ----------------- nb
CalcValide = nbcel
Case 4 '------------------ max
CalcValide = tblcel(1)
For i = 2 To nbvaleur
If tblcel(i) > CalcValide Then CalcValide = tblcel(i)
Next
Case 5 '------------------ min
CalcValide = tblcel(1)
For i = 2 To nbvaleur
If tblcel(i) Next
Case 6 '------------------ produit
CalcValide = tblcel(1)
For i = 2 To nbvaleur
CalcValide = CalcValide * tblcel(i)
Next
Case 7 ' ----------------- ecarttype
CalcValide = Application.StDev(tblcel())
Case 8 ' -----------------ecarttypeP
CalcValide = Application.StDevP(tblcel())
Case 9 ' ------------------ somme
CalcValide = letotal
Case 10 ' ----------------- variance
CalcValide = Application.Var(tblcel())
Case 11 ' -----------------varP
CalcValide = Application.VarP(tblcel())
Case Else
CalcValide = nbcel
End Select
End Function
Astuce illustrée par ce classeur
gdfc-exclurevaleurs
Page modifiée le 15/09/2012
- Connectez-vous ou inscrivez-vous pour publier un commentaire
- 232 lectures

Commentaires récents