Erreur recherchev sur cellule remplie depuis formulaire

Bonjour,

C'est mon premier message ici, merci d'avance pour vos réponses. J'ai cherché si quelqu'un avait eu une erreur similaire mais n'ai pas trouvé...

Mon fichier a pour but de créer une facture à partir d'informations remplies manuellement dans un formulaire.

L'une des textbox du formulaire contient le code-barre du produit facturé (dit aussi "code EAN", qui est composé d'une suite de chiffres).

Cette textbox alimente une cellule dans la facture (par exemple A12) avec les instructions suivantes dans le formulaire :

    If Me.Controls("TextBox1").Visible = True Then
      ActiveCell = Me.Controls("TextBox1")
    End If

Une fois remplie, la cellule A12 est ensuite utilisée comme valeur cherchée dans la formule suivante :

=SI($A12=0;"";RECHERCHEV($A12;'LISTE DES REFERENCES'!$A$1:$L$1000;4;FAUX))

où la feuille LISTE DES REFERENCES contient tous les produits et leurs numéros de code-barres.

Problème : le résultat de cette RechercheV est systématiquement #N/A, avec l'explication "une valeur n'est pas disponible pour la formule ou la fonction".

Cas où la RechercheV fonctionne :

  • si je fais tout simplement F2 puis Entrée sur A12 (éditer la cellule sans en changer la valeur) : la RechercheV se remet à "fonctionner" et renvoi le bon résultat
  • si la cellule A12 est alimentée depuis TextBox1 avec un code qui n'est pas composé uniquement de chiffres (par exemple AAAA1111)

J'ai essayé de modifier le format de la cellule dans tous les sens : rien n'y fait !

Merci d'avance pour votre aide,

François

Bonsoir,

je présume que la valeur dans la textbox est numérique ? Sans fichier c'est dur....

Toujours est-il que c'est une erreur courante :

TEXTBOX1 = Boite de texte !!!!

Hors 123 en texte n'est pas égale à 123 en numérique.

Excel fait la différence entre les deux grâce à l'alignement par défaut des cellules :

aligné à droite de la cellule = numérique,

aligné à gauche = alphanumérique.

Mais il se peut que vous ne le voyez plus car comme beaucoup de gens vous faites les "mises en formes" des tableau avant de vérifier leur fonctionnement correcte

Donc si c'est le cas alors écrivez ceci :

    If Me.Controls("TextBox1").Visible = True Then
      ActiveCell = CDbl(Me.Controls("TextBox1"))
    End If

Ce n'est qu'un essai, il a peut-être mieux à faire ou alors je suis complètement à coté !

@ bientôt

LouReeD

Bonjour et merci de votre réponse.

Pas de changement avec CDBl malheureusement

Le fichier est trop lourd pour être mis en PJ. Je peux peut-être vous l'envoyer par email ?

Bonjour,

tu peux zipper ton fichier ou en mettre une copie de 20 / 30 lignes

P.

C'est bon, j'ai traité mon problème avec le code suivant :

    If Me.Controls("TextBox1").Visible = True Then
        If IsNumeric(Me.TextBox1.Value) Then
            ActiveCell = Format(Me.TextBox1.Value, "0")
            Else
            ActiveCell = Me.Controls("TextBox1")
        End If
    End If

Merci en tous cas de ton aide

Bonsoir,

et excusez moi j'avais lu post en "diagonal" !

En effet s'il y a de l'alphanumérique et du numérique alors le CDbl devait créer une erreur !

Honte à moi !

Ravis que vous ayez trouvé la solution.

@ bientôt

LouReeD

Rechercher des sujets similaires à "erreur recherchev remplie formulaire"