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 : Sélectionner tout - Visualiser dans une fenêtre à part
Application.Calculation = xlCalculationAutomatic
à la fin de mon code mais sans conséquence.

merci pour votre aide.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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