Private Sub Worksheet_Activate()
Dim Ts(1 To 50, 1 To 4) As Variant, VAL5 As SsGroup, S As Double, Nb As Long, NbInfÉgm600 As Long, _
Détail As Variant, Ls As Long
For Each VAL5 In GroupOrg(PlgUti(Feuil1.[A2]), 1) ' Pour chaque sous-groupe basé sur la colonne 1
S = 0: Nb = 0: NbInfÉgm600 = 0 ' RAZ
For Each Détail In VAL5.Contenu ' Pour chaque ligne de détail du sous-groupe
If Not IsEmpty(Détail(3)) Then ' Si valeur non vide colonne 3 :
S = S + Détail(3) ' Cumul
Nb = Nb + 1 ' Comptage
If Détail(3) <= -600 Then NbInfÉgm600 = NbInfÉgm600 + 1 ' Comptage des <= -600
End If: Next Détail ' Détail suivant
Ls = Ls + 1 ' Incrément n° de ligne de sortie
Ts(Ls, 1) = VAL5.Id ' Id colonne 1
Ts(Ls, 2) = Int(S / Nb + 0.5) ' Arrondi moyenne
Ts(Ls, 3) = Nb ' Nombre des renseignés
Ts(Ls, 4) = NbInfÉgm600 ' Nombre des <= -600
Next VAL5 ' Sous-groupe suivant
Me.Rows(2).Resize(50).ClearContents ' Affacement 50 lignes
Me.[A2].Resize(Ls, 4).Value = Ts ' Versement contenu tableau dans valeurs plage.
End Sub