Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionpourquoi as tu besoin de 9 listbox
tu les montres tous en meme temps ?
si tes calculs aux centièmes ( -0.10, -0.11, -0.12, etc...) sont identiques à ceux au dixième ( -0.1) pourquoi ne pas mettre ces calculs dans un sous-programme que tu appellerais quand tu en as besoin
une autre astuce : quand tu fais le calcul au dixième ( -0.1) fais les 9 autres calculs aux centièmes ( de -0.11 à - 0.19) et affiche les 10 calcule effectués. Dans ce cas là nullement besoin de 9 listbox suplémentaires
Dim nombre As Single ' variable qui contient la valeur If ListQ.ListIndex = -1 Then nombre = -1 ' valeur par défaut Else nombre = Val(ListQ.List(ListQ.ListIndex)) ' valeur sélectionnée End If Select Case nombre Case -0.1 A.Text = moncalcul1 B.Text = moncalcul2 C.Text = unevaleur * (0.1), "0.00") D.Text = moncalcul4 E.Text = moncalcul5 F.Text = moncalcul6 G.Text = moncalcul7 H.Text = moncalcul8 I.Text = moncalcul9 J.Text = moncalcul10 K.Text = uneautrevaleur * (0.1), "0.00") L.Text = "-0.1" Case -0.2 . . . Case -1.5 End Select If KCFP.Text < KPFP.Text Then M.Text = moncalcul11 Else M.Text = moncalcul12 End If End Sub
Option Explicit Private Sub BuildListdixiemevaleur() Dim iter As Integer Dim value As Double Me.Listdixiemevaleur.Clear For iter = 0 To -15 Step -1 value = iter / 10 If Int(Abs(value)) = 0 Then If value = 0 Then Me.Listdixiemevaleur.AddItem "0." & Trim(str(value)) Else Me.Listdixiemevaleur.AddItem "-0" & Trim(str(Abs(value))) End If Else Me.Listdixiemevaleur.AddItem Trim(str(value)) End If Next iter End Sub Private Sub Form_Load() Me.Listcentiemevaleur.Visible = False BuildListdixiemevaleur End Sub Private Sub Listdixiemevaleur_Click() Me.Listcentiemevaleur.Visible = True BuildListcentiemevaleur (Me.Listdixiemevaleur.Text) End Sub Private Sub BuildListcentiemevaleur(valuedixieme As String) Dim iter As Integer Dim value As Double Me.Listcentiemevaleur.Clear For iter = 0 To 9 value = iter / 100 If Int(value) = 0 Then If value = 0 Then Me.Listcentiemevaleur.AddItem valuedixieme & value Else Me.Listcentiemevaleur.AddItem valuedixieme & Mid(value, 3) End If End If Next iter End Sub
Option Explicit Private Sub BuildListdixiemevaleur() Dim iter As Integer Dim value As Double Me.Listdixiemevaleur.Clear For iter = 0 To -15 Step -1 value = iter / 10 If Int(Abs(value)) = 0 Then If value = 0 Then Me.Listdixiemevaleur.AddItem "0." & Trim(str(value)) Else Me.Listdixiemevaleur.AddItem "-0" & Trim(str(Abs(value))) End If Else If value = -1 Then Me.Listdixiemevaleur.AddItem "-1.0" Else Me.Listdixiemevaleur.AddItem Trim(str(value)) End If End If Next iter End Sub Private Sub Form_Load() Me.Listcentiemevaleur.Visible = False BuildListdixiemevaleur End Sub Private Sub Listdixiemevaleur_Click() Me.Listcentiemevaleur.Visible = True BuildListcentiemevaleur (Me.Listdixiemevaleur.Text) End Sub Private Sub BuildListcentiemevaleur(valuedixieme As String) Dim iter As Integer Dim value As Double Me.Listcentiemevaleur.Clear For iter = 0 To 9 value = iter / 100 If Int(value) = 0 Then If value = 0 Then Me.Listcentiemevaleur.AddItem valuedixieme & value Else Me.Listcentiemevaleur.AddItem valuedixieme & Mid(value, 3) End If End If Next iter End Sub
Bon ben apres beaucoup d essais, ce n est pas concluant