Control Source--vba

Dan Paul

XLDnaute Nouveau
Bonjour,

dans un formulaire, j'ai un textbox (disons A) qui doit afficher une valeur resultant d'un calcul de plusieurs autres valeurs contenues dans d'autres textbox (disons B et C).

De plus, la valeur de B doit etre traitee par une fonction qui est situe dans un module (disons fonction Decode)

Pour le moment, j'ai code pour chaque afterupdate de B ou C excel recalcule la valeur de A.

Je me demandais s'il n'etait pas mieux de passer par la propriete ControlSource du textbox A.

Mais comment fait on?!
Code:
Private Sub txtDND_AfterUpdate()
'WP Premium     (A)
txtWPrND.Value = Decode(txtDND.Value, 0, 0, 1, txtWPND.Value / 0.25, txtWPND.Value / 0.9)
End Sub

Code:
'Decode(no, 1,"un",2,"deux",...,"inconnu")
Public Function Decode(strCompare As String, ParamArray strValues() As Variant) As Variant
    Dim i As Long
    For i = LBound(strValues) + 1 To UBound(strValues) Step 2
        If strValues(i - 1) = strCompare Then
            Decode = strValues(i)
            Exit Function
        End If
    Next i
    If UBound(strValues) Mod 2 = 0 Then Decode = strValues(UBound(strValues)) Else Decode = Null
End Function

Merci!
 

Discussions similaires

Réponses
2
Affichages
284

Statistiques des forums

Discussions
312 379
Messages
2 087 768
Membres
103 662
dernier inscrit
rterterert