Bonjour,

Je travail en simultané sur 2 userform. Le premier comprend une listbox avec des articles et des prix unitaires (PU). Le second (Devis) comprend un multipage dans lequel j'incère des lignes dynamiquement lors d'un double click sur un article de la listbox. Je crée donc une série de textbox avec, pour le sujet qui m'intéresse Quantité (TxtQte), Prix Unitaire (TxtPU) et Total (TxtTotal). Cette partie là fonctionne très bien.
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
 
Dim Tqte As Control, Tpu As Control, Ttot As Control
If T = 0 Then T = 24
  If I = 0 Then I = 1
      With UsfDevis.MultiPage1.Pages(1).Controls
      Set Tqte = .Add("Forms.TextBox.1")
      Set Tpu = .Add("Forms.TextBox.1")
      Set Ttot = .Add("Forms.TextBox.1")
      With Tqte
        .Name = "TxtQte" & I: .Left = 348: .Top = T: .Height = 18: .Width = 30
        .Value = UsfDevis.TxtNbreJour.Value
      End With
      With Tpu
        .Name = "TxtPU" & I: .Left = 390: .Top = T: .Height = 18: .Width = 42
        .Value = ListBox1.List(ListBox1.ListIndex, 2)
      End With
      With Ttot
        .Name = "TxtTotal" & I: .Left = 444: .Top = T: .Height = 18: .Width = 60
        .Value = ListBox1.List(ListBox1.ListIndex, 2) * Tqte.Value
      End With
      I = I + 1
      T = T + 24
Les quantité, PU et Total sont reportés ainsi dans UsfDevis. A l'aide de msgbox j'ai vérifié les noms des textbox créées TxtQte1, TxtQte2 etc... Tout fonctionne bien.
L'utilisateur va avoir besoin de temps en temps de modifier soit la quantité, soit le Prix Unitaire. J'ai donc créé une procédure dans UsfDevis pour traiter ce cas de figure:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
Private Sub TxtQte1_Change()
  TxtTotal1.Value = TxtQte1 * TxtPU1
End Sub
Private Sub TxtPU1_Change()
  TxtTotal1.Value = TxtQte1.Value * TxtPU1.Value
End Sub
Et c'est là que ça coince. Si je change la quantité, le total ne change pas
si je change le PU, le total ne change pas non plus.

La question est: Qu'est ce que j'ai mal fait? ca me paraissait pourtant à ma portée.

Merci d'avance