Microsoft 365 Somme négative dans listbox non acceptée

ERN

XLDnaute Junior
Bonjour à tous,

J'ai un problème dans ma listbox. Si je sélectionne une ligne où il y a prix négatif (car moins value), celle-ci m'indique une erreur.
Excel surligne la zone où est indiqué " Me("TxtB_" & k + 1) = Format(CDbl("0" & Me.ListBox1.Column(k)), "Currency")"

Auriez-vous une idée ?

Merci d'avance,

VB:
Private Sub ListBox1_Click()
If kit = True Then Exit Sub
    For k = 0 To Ncol - 2
        If k + 1 = 8 Or k + 1 = 9 Then
            Me("TxtB_" & k + 1) = Format(CDbl("0" & Me.ListBox1.Column(k)), "Currency")
        Else
            Me("TxtB_" & k + 1) = Me.ListBox1.Column(k)
        End If
    Next k
Label6 = Me.ListBox1.Column(11)
End Sub
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Si je me souviens bien, je vous avais donnée le truc de la concaténation du "0" avec le contenu de l'item de listbox pour éviter l'erreur de CDBL avec les items "".

Si vous réfléchissez un peu sur le truc vous verrez que "0" & un item négatif ("-2,50") donnerait "0-2,50" ce qui fait de nouveau hurler CDBL.

Le mieux alors c'est d'éviter l'excès de raccourci.

Rajoutez une variable en tête de procédure:
VB:
Dim Valeur as Double
'
'
' Puis au bon endroit
Valeur = iif(Me.ListBox1.Column(k)="",0,CDBL(Me.ListBox1.Column(k))
Me("TxtB_" & k + 1) = Format(Valeur, "Currency")

Cordialement
 

Discussions similaires

Réponses
3
Affichages
737

Statistiques des forums

Discussions
315 094
Messages
2 116 144
Membres
112 669
dernier inscrit
Guigui2502