Microsoft 365 Erreur dans ListBox lors de la selction d'un article

ERN

XLDnaute Junior
Bonjour à tous,

Je reviens vers vous ayant suite à une erreur qui dépasse mes maigres compétences.

En effet, lors d'une recherche dans ma base de données une fois les résultats affichés, dès que j'accède à une TextBox pour modifier les informations l'erreur apparait.

Je vous joins des captures d'écran ainsi que le fichier en question. Par contre ce fichier n'a pas toutes les données pour pouvoir le charger sur le site et j'ai l'impression que le problème disparaît qua il y a moins de données.

Auriez-vous une idée du problème ?

Attention, le formulaire se lance automatiquement dès l'ouverture du fichier.

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(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
 

Pièces jointes

  • Capture LIGNE ERREUR .JPG
    Capture LIGNE ERREUR .JPG
    33 KB · Affichages: 23
  • Capture TYPE ERREUR .JPG
    Capture TYPE ERREUR .JPG
    213.3 KB · Affichages: 20
  • Bdd_Fournisseurs.xlsm
    776.6 KB · Affichages: 8

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

j'ai l'impression que le problème disparaît qua il y a moins de données.
Non ce n'est sans doute pas ça. Par contre je parie que c'est la fonction CdbL() qui doit tomber sur une valeur non interprétable pour elle. Soit un . au lieu de la virgule soit une valeur vide.
Pour éviter ce dernier cas ajouter un zéro "0" devant la valeur à convertir :
Me("TxtB_" & k + 1) = Format(CDbl("0" & Me.ListBox1.Column(k)), "Currency")

Cdbl n'aime pas les chaîne vide.

S'il y a un nombre dans la chaîne le "0" n'aura aucune incidence sur la conversion.

Cordialement
 

Discussions similaires

  • Question
Microsoft 365 ListBox TextBox
Réponses
5
Affichages
2 K