Comment mettre a jour des calculs dans un userform
Bonjour a tous,
J'ai crée un userform avec des combobox et en fonction des valeurs de ces combobox je vais recherché des valeurs dans une feuille excel dans des TextBox.
Tout se passe bien lors de la première initialisation, mais lorsque je modifie la valeur de ma Combobox les TexBox ne se mette pas a jour.
Comment faut-il faire pour que mes résultat s'affiche des la modification de la valeur de ma Combobox.
Le code a pourtant été crée sur _Change() de mon combobox.
j'ai testé sinon en rajoutant
Code:
Application.Calculation = xlCalculationAutomatic
à la fin de mon code mais sans conséquence.
merci pour votre aide.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| Private Sub CmbEffetCalNT_Change()
Dim Plage1 As Range
Dim Plage2 As Range
Dim FL1 As Worksheet
FenetreFMESUser.LblEffetCalEC.Value = FenetreFMESUser.CmbEffetCalNT.Value
NomProjet = FenetrePrincipale.LblProjet.Value
On Error Resume Next
Set FL1 = Workbooks.Open("FMES-" & NomProjet & ".xls").Worksheets("FMES Equipement")
If Err.Number = 1004 Then
GoTo line1
End If
line1:
Set FL1 = Workbooks("FMES-" & NomProjet & ".xls").Worksheets("FMES Equipement")
Set Plage1 = FL1.Range("A4:A" & FL1.UsedRange.Rows.Count)
Set Plage2 = FL1.Range("C4:C" & FL1.UsedRange.Rows.Count)
i = 4
For Each Cell2 In Plage2
If FL1.Range("A" & i) = FenetreFMESUser.CmbListeFonction.Value Then
FenetreFMESUser.LblLambdaTot.Value = (FL1.Range("D" & i).Value)
FenetreFMESUser.LblLambdaTot.Value = Format(FenetreFMESUser.LblLambdaTot.Value, "##,##0.00")
FenetreFMESUser.LblDetC.Value = FL1.Range("E" & i).Value
FenetreFMESUser.LblIndetC.Value = (100 - (FL1.Range("E" & i).Value))
FenetreFMESUser.LblLambdaDet.Value = (FL1.Range("E" & i).Value * FL1.Range("D" & i).Value)
FenetreFMESUser.LblLambdaDet.Value = Format(FenetreFMESUser.LblLambdaDet.Value, "##,##0.00")
FenetreFMESUser.LblLambdaIndet.Value = (FenetreFMESUser.LblIndetC.Value * FL1.Range("D" & i).Value)
FenetreFMESUser.LblLambdaIndet.Value = Format(FenetreFMESUser.LblLambdaIndet.Value, "##,##0.00")
End If
i = i + 1
Next
End Sub |
alex