Moyenne ponderée en fonction de la réference

chakib24

XLDnaute Nouveau
Bonjour à tous,

Je reviens vers vous en esperant trouver de l'aide comme c'est souvent arrivé!

Alors j'explique mon souci....voir fichier joint

j'aimerais trouver une équation qui permet de faire:

--> pour chaque réference en colonne B
--> trouver la couleur qui se repete en colonne C
--> puis calculer pour cette couleur 'La moyenne ponderée' des mesures (en colonne E) par rapport aux longueurs (en colonne D).
--> Mettre le resultat une fois seulement dans la derniere ligne contenat la reference + la couleur en question...

j'espere que j'ai été un peu clair :confused:
j'ai essayé de mettre un fichier avec mlon besoin en colonne en orange
Merci d'avance à tous
 

Pièces jointes

  • BDD3.xlsx
    26.9 KB · Affichages: 43
  • BDD3.xlsx
    26.9 KB · Affichages: 49
  • BDD3.xlsx
    26.9 KB · Affichages: 51

job75

XLDnaute Barbatruc
Re : Moyenne ponderée en fonction de la réference

Bonjour chakib24,

Voyez ce code dans le fichier joint :

Code:
Option Compare Text 'la casse est ignorée

Sub Moyenne_pondérée()
Dim t, i&, p#, s#
Range("A2:E" & Rows.Count).Sort [B2], xlAscending, [C2], Header:=xlYes 'tri (sécurité)
t = Range("B3:G" & Range("B" & Rows.Count).End(xlUp).Row + 1)
For i = 1 To UBound(t) - 1
  t(i, 6) = ""
  p = p + t(i, 3) * t(i, 4)
  s = s + t(i, 3)
  If t(i, 1) & t(i, 2) <> t(i + 1, 1) & t(i + 1, 2) Then
    t(i, 6) = p / s
    p = 0
    s = 0
  End If
Next
[G3].Resize(UBound(t)) = Application.Index(t, 0, 6)
Range("G" & UBound(t) + 2 & ":G" & Rows.Count).ClearContents
End Sub
La macro est rapide car elle utilise un tableau VBA.

Edit : ajouté la dernière ligne.

A+
 

Pièces jointes

  • BDD(1).xls
    102.5 KB · Affichages: 38
Dernière édition:

chakib24

XLDnaute Nouveau
Re : Moyenne ponderée en fonction de la réference

bonjour Job75 et merci pour ta réponse...

c'est exactement ce que je voulais, mais j'avoue que si qq1 a une idée pour le réaliser sans VBA ça me faciliterai la tache davantage, car le fichier sera utilisé par nombre de personnes de tous niveaux d'excel...et si je peux éviter les macros je préfère :p

Dans l'attente,
Merci à tous
 

job75

XLDnaute Barbatruc
Re : Moyenne ponderée en fonction de la réference

Re,

Voyez le fichier joint avec une solution par formules.

Les colonnes G et H sont utilisées comme colonnes auxiliaires et sont à masquer.

Il y a sûrement moyen de se passer de colonnes auxiliaires, mais pas envie de me casser la tête.

Edit : si les colonnes G et H sont masquées, c'est la plage F3: I3 qu'on tire vers le bas pour copier les formules.

A+
 

Pièces jointes

  • BDD par formules(1).xls
    135.5 KB · Affichages: 43
Dernière édition:

chakib24

XLDnaute Nouveau
Re : Moyenne ponderée en fonction de la réference

Re,

Voyez le fichier joint avec une solution par formules.

Les colonnes G et H sont utilisées comme colonnes auxiliaires et sont à masquer.

Il y a sûrement moyen de se passer de colonnes auxiliaires, mais pas envie de me casser la tête.

Edit : si les colonnes G et H sont masquées, c'est la plage F3: I3 qu'on tire vers le bas pour copier les formules.

A+
Là c'est nickel...merci vous êtes au TOP :p
j'essaierai au futur de me passer des colonnes intermédiaires, mais pour l'instant ça convient parfaitement a ce que je voulais...:D
 

job75

XLDnaute Barbatruc
Re : Moyenne ponderée en fonction de la réference

Re,

Version (2) sans colonnes auxiliaires avec cette formule en G3 :

Code:
=SI(B3&C3=B4&C4;"";SOMME(P)/SOMME(S))
Voyez les 3 noms définis T S P.

Je pense qu'on a fait ainsi le tour de la question.

Edit : j'avais mal choisi les noms définis.

A+
 

Pièces jointes

  • BDD par formules(2).xls
    108.5 KB · Affichages: 40
Dernière édition:

job75

XLDnaute Barbatruc
Re : Moyenne ponderée en fonction de la réference

Bonjour chakib, le forum,

Le seul ennui de la solution précédente c'est que la fonction DECALER (qui définit T) est volatile.

De ce fait toutes les formules sont recalculées à chaque modification, ce peut être gênant sur un grand tableau.

Pour l'éviter on peut figer les dimensions du tableau T par =Total!$B$3:$E$1000

Mais alors il faut protéger la feuille pour éviter qu'on supprime des lignes.

Voyez le fichier (3), le mot de passe pour la feuille est chakib.

Edit : en protégeant cochez les options permettant le tri et le filtrage.

A+
 

Pièces jointes

  • BDD par formules(3).xls
    139.5 KB · Affichages: 42
Dernière édition:

chakib24

XLDnaute Nouveau
Re : Moyenne ponderée en fonction de la réference

Bonjour Job75, le forum,

desolé pour le retard de ma réponse
je m'etais servi de toutes ces solutions 'moyennes pondérées' pour faires mes essais, et finalement j'arrive a prouver que dans mon cas l'impact n'est pas tres significatif entre 'moyennes pondéreés' et/ou 'moyenne simple', donc finalement je fais des calculs de moyenne simples, ca me facilite la tache malgré les qq autres petits soucis que je devrai resoudre :)
merci en tous cas de votre aide ca m'a été d'une grande utilité...

Chakib.
 

Discussions similaires

Statistiques des forums

Discussions
312 241
Messages
2 086 522
Membres
103 241
dernier inscrit
Peyo33