XL 2010 Somme sur une fonction non standard

fablog

XLDnaute Occasionnel
Bonjour,

j'ai besoin d'aide pour modifier une somme de colonne qui fait appel à une fonction non standard. Ci-joint un fichier d'exemple; le besoin se trouve dans les cellules contenant un point d'interrogation.
J'ai reçu une aide très appréciée sur un besoin similaire, sur ce fil de discussion, car cela concernait les sommes par ligne.
Je précise que mes compétences en VBA sont très limitées.

Merci par avance pour votre aide!
 

Pièces jointes

  • Test2.xlsm
    47.8 KB · Affichages: 27

fablog

XLDnaute Occasionnel
Merci CISCO mais cela ne prend pas en compte la fonction non standard dont je parlais. Pour être plus clair, la fonction est POND et on peut voir son application dans la cellule D6. Si elle est présente dans la formule dans D6 pour la somme horizontal, elle doit etre présente dans la formule en B10 pour la somme verticale. Sinon un changement du nombre d'heure en B8, par exemple, va influencer la somme de la colonne C.

Merci!
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Pas sûr d'avoir compris. Si c'est le cas, au plus simple il va falloir deux fonctions: une PondH et une autre PondV.
VB:
Option Explicit
Function PondH(ByVal R1 As Range, ByVal RLig As Range) As Double
Dim T1(), TL(), C As Long
T1 = R1.Value: TL = RLig.Value
For C = 1 To UBound(TL, 2)
    PondH = PondH + Coef(RLig(1, C)) * TL(1, C) * T1(1, C)
    Next C
End Function
Function PondV(ByVal V1 As Double, ByVal RCol As Range) As Double
Dim TC(), L As Long
TC = RCol.Value
For L = 1 To UBound(TC, 1)
    PondV = PondV + Coef(RCol(L, 1)) * TC(L, 1) * V1
    Next L
End Function
Function Coef(ByVal C As Range) As Double
Const Blanc = -4142, Orange = 44, Gris = 15, Mauve = 39
Select Case C.Interior.ColorIndex
     Case Orange: Coef = 1.5
     Case Gris: Coef = 1.75
     Case Mauve: Coef = 2
     Case Else: Coef = 1: End Select
End Function
En D6, à propager sur 3 lignes :
Code:
=PondH($B$1:$C$1;$B6:$C6)
En B10, à propager sur 2 colonnes :
Code:
=PondV(B$1;B$6:B$8)
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 144
Membres
103 129
dernier inscrit
Atruc81500