Moyenne pour un nombre indéfini de ligne

Résolu/Fermé
StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015 - 23 avril 2015 à 14:33
redaiwa Messages postés 351 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 25 janvier 2024 - 26 avril 2015 à 10:32
Bonjour,
Voilà je cherche à faire la moyenne de "taux" pour un genre de bactérie donné, à partir de la ligne 6 jusqu'à ce que le genre de la bactérie, ici acidiphilium, change.


Je dois me retrouver avec un algo de type : tant que le genre de bactérie ne change pas, faire la moyennes des "taux" associées à chacune des bactéries du même genre. J'ai l'obligation d'utiliser une itération "tant que" et d'écrire la macro correspondante.
J'ai essayé la fonction NB.SI mais je n'arrive pas à rédiger correctement peut être y a t'il d'autres solutions.
Merci d'avance pour votre aide.
A voir également:

5 réponses

redaiwa Messages postés 351 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 25 janvier 2024 119
Modifié par redaiwa le 23/04/2015 à 15:55
Salam StarFish.

Une autre solution par macro : https://www.cjoint.com/c/EDxqaez4J4m
(Cliquer sur le bouton [Moyenne par Genre])

Voici la macro utilisée :
Private Sub MoyenneParGenre_Click()

lignegenre1 = 2 'commencer en ligne 2

While Range("A" & lignegenre1) <> "" 'tant qu'il y a des valeurs

taux = Range("C" & lignegenre1)
lignegenre2 = lignegenre1 + 1

While Range("A" & lignegenre1) = Range("A" & lignegenre2) 'tant que le genre est le même
taux = taux + Range("C" & lignegenre2) 'cumuler les taux
lignegenre2 = lignegenre2 + 1
Wend

Range("E" & lignegenre1) = taux / (lignegenre2 - lignegenre1) 'calculer la moyenne des taux

lignegenre1 = lignegenre2 'passer au genre suivant

Wend

End Sub


"Repousse le mal par le bien; et voilà que celui avec qui tu avais une animosité devient tel un ami chaleureux" (Coran)
"Celui qui ne sait pas partager est infirme de ses émotions". (Marc Levy)
1
StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
23 avril 2015 à 16:26
Merci beaucoup je rechercher une macro dans ce genre, je vais tester et je vous tiens au courant.
0
redaiwa Messages postés 351 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 25 janvier 2024 119 > StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
26 avril 2015 à 10:32
Salam StarFish.
Si ça marche, prière mettre en "résolu" pour indiquer aux autres qu'une solution satisfaisante est disponible pour cette question.
Merci.
0
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702
23 avril 2015 à 14:36
Bonjour StarFishV2.0

Plutôt qu'une image peu lisible, postes un exemple de ton fichier (allégé si nécessaire) sur cjoint.com et reviens ici indiquer le lien fourni, qu'on puisse travailler sur une base s'il est nécessaire de passer par une macro

Dans l'attente
Cdlmnt
Via
0
StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
23 avril 2015 à 14:46
bonjour,
Comme vous l'avez demandé : https://www.cjoint.com/c/EDxo7IuTmHo
0
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702 > StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
23 avril 2015 à 15:03
Re,
Hello Vaucluse ;)

Essaie avec cette formule en D1 à étirer ensuite au bas de la colonne :
=SI(A2<>A1;MOYENNE.SI(A:A;A1;D:D);"")
qui fera la moyenne sur la dernière ligne d'une bactérie à condition qu'elles soient classées dans l'ordre

Si, comme Vaucluse pose la question, il peut y avoir à plusieurs endroits dans la colonne A la même bactérie alors ce serait plutôt cette formule :
=SI(NB.SI(A:A;A1)=NB.SI($A$1:A1;A1);MOYENNE.SI(A:A;A1;D:D);"")

Cdlmnt
Via
0
StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
23 avril 2015 à 16:27
Merci bien, j'avais déjà vu une macro similaire mais ça s'éloigne beaucoup de ce que l'on avait vu en cours je vais donc essayer plutôt avec celle de redaiwa.
0
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702 > StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
23 avril 2015 à 16:35
Il ne s'agit pas de macro mais simplement de formule dans la colonne D avec simplement la fonction MOYENNE.SI; c'est plus simple qu'une macro !
0
StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
23 avril 2015 à 18:18
Oui c'est exact mais comme je l'ai indiqué dans mon post j'ai l'OBLIGATION d'utiliser une macro :)
Merci quand même.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
23 avril 2015 à 14:45
Bonjour
Je rejoins l'ami Via, bien qu'en agrandissant on peut y voir un peu plus clair, mais ce que vous ne dites pas et qui n'apparait pas dans le document, c'est:
est ce que la bactérie peut "revenir" dans la liste en colonne A ou est elle uniquement cantonnée à un paragraphe?
à vous lire
0
StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
23 avril 2015 à 14:51
Bonjour,
Les bactéries de même genre listées dans la colonne A se suivent et ne "reviennent" pas les lignes suivantes ( après changement de genre ).
0

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

Posez votre question
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
23 avril 2015 à 18:20
Bonjour,

Sans macro et sans formule, les TCD sont faits pour ça.
https://www.cjoint.com/c/EDxsGBmz6mM

eric

PS : quand on te demande un fichier c'est un fichier .xls qu'on veut.
Tu amènes une photo de ta voiture au garagiste ?
0
StarFishV2.0 Messages postés 7 Date d'inscription jeudi 23 avril 2015 Statut Membre Dernière intervention 24 avril 2015
24 avril 2015 à 00:22
Bonsoir,
L'énervement est souvent source de manque de discernement, j'ai bien préciser que je ne voulais pas autre chose qu'une macro, car j'ai l'obligation de suivre un certain procédé, et non pas un TCD. La prochaine fois il serrait avisé de revoir le ton accusateur de votre message.
Quand tu vas chez le garagiste si tu lui demande de changer la transmission c'est pas pour qu'il te fasse les freins.

Merci.
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
24 avril 2015 à 00:31
Je pensais t'éclairer, je ne le ferais plus soit en sûr.
Au passage la charte du forum interdit l'aide au devoir. Tu pourras la lire...
eric
0