Calcul d'une moyenne d'une colonne toutes les 7 cases

Bonjour,

je m'adresse à vous car je suis plus que débutant en programmation sous VBA mais cependant j'aurais besoin de cet outil pour me faciliter mon travail. Je chercher à réaliser la moyenne d'une colonne avec un pas bien précis. plus précisément, faire la moyenne de 7 cases et faire de même avec les 7 suivantes ... jusqu'à ce que toutes les valeurs de la colonne y soit passées. dans le fichier que je joins, il s'agit de la colonne P (en bleue).

Pouvez-vous m'aider ? j'ai essayer de faire des boucles mais sans succès, cette création est trop difficile pour mon niveau et je m'en réfère à des personnes plus expérimentées !

Merci de attention ^^

Bonjour,

Ces moyennes tu veux les mettre où ?

En ajoutant une ligne toutes les 7 ou dans une autre colonne ?

Hervé.

bonjour,

je souhaiterai les mettre dans une autre colonne ou une autre feuille, car après je souhaite les récupérer pour en faire un graphique.

Merci

Re,

Regarde si ça te convient. Les moyennes sont misent en feuille "resultat_pression", adapte :

Sub Moyenne()

    Dim Plage As Range
    Dim I As Integer
    Dim J As Integer
    Dim Total As Double

    'défini la plage de P39 à P1229
    With Worksheets("Feuil1")

        Set Plage = .Range(.Cells(39, 16), .Cells(1229, 16))

    End With

    'boucle sur la plage
    For I = 1 To Plage.Count

        J = J + 1

        'totalise les valeurs
        Total = Total + Plage(I)

        'si 7 cellules ont été totalisées, moyenne et inscrit
        'en feuille "resultat_pression" avec 2 décimales
        If J = 7 Then

            With Worksheets("resultat_pression")

                .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0) = Round(Total / 7, 2)

            End With

            Total = 0
            J = 0

        End If

    Next I

End Sub

Hervé.

C'est exactement ce que je voulais, je vous remercie beaucoup car cela va me faciliter mon travail !!

je pourrais adapter la formule si besoin !!

Merci pour la rapidité de votre réponse et pour votre aide

Bonsoir,

Le calcul des moyennes prend en compte les cellules vides de la feuille 1.

Et cela nuit évidemment aux résultats.

Me dire si je dois revoir la demande.

Cordialement.

Bonsoir,

Effectivement, les cellules vides sont prisent en compte dans la moyenne. Si elles ne doivent pas l'être, il suffit de remplacer la proc précédente par la suivante :

Sub Moyenne()

    Dim Plage As Range
    Dim I As Integer
    Dim J As Integer
    Dim Total As Double

    'défini la plage de P39 à P1229
   With Worksheets("Feuil1")

        Set Plage = .Range(.Cells(39, 16), .Cells(1229, 16))

    End With

    'boucle sur la plage
   For I = 1 To Plage.Count

        'totalise les valeurs seulement pour les cellules non vides
        If Plage(I) <> "" Then

            J = J + 1

            Total = Total + Plage(I)

            'si 7 cellules ont été totalisées, moyenne et inscrit
            'en feuille "resultat_pression" avec 2 décimales
            If J = 7 Then

                With Worksheets("resultat_pression")

                    .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0) = Round(Total / 7, 2)

                End With

                Total = 0
                J = 0

            End If

        End If

    Next I

End Sub

Hervé.

Bonsoir,

je vous remercie pour cette précision, je n'avais pas fais attention à ce détail !

je vais de ce pas changer l'ancienne procédure par celle-ci.

Merci beaucoup,

Rechercher des sujets similaires à "calcul moyenne colonne toutes cases"