Erreur 1004 VLookup

Bonsoir,

depuis 2 jours, je suis bloqué sur l'écriture VLookup.
tout le tableau est renseigné.
Pourriez-vous m'aider s'il vous plait ?

Le but est de rechercher à partir du nom d'article ses informations qui lui correspondes.
mais dans le code ci-dessous, cela ne fonctionne pas malgré que le tableau 'ARTICLE' soit complet.

Private Sub CommandButton1_Click()
Dim Part_Articles As String
Dim Part_prix As Currency

If Me.Cbx_Nomarticles.ListIndex >= 0 And Me.Txt_nombre <> "" And Me.Cbx_activite <> "" Then

'Rechercher dans article
Part_Articles = WorksheetFunction.VLookup(Me.Cbx_Nomarticles, Sheets("ARTICLE").Range("b:i"), 1, 0)
Part_prix = WorksheetFunction.VLookup(Me.Cbx_Nomarticles, Sheets("ARTICLE").Range("b:i"), 7, 0)

'Remplir la zone de liste
With Me.Liste_order
.AddItem
.List(memoire, 0) = Part_Articles
.List(memoire, 1) = Me.Cbx_Nomarticles
.List(memoire, 3) = CCur(Part_prix)
.List(memoire, 4) = Me.Txt_nombre
.List(memoire, 2) = Me.Cbx_activite
End With

memoire = memoire + 1

'Vider l'article et le nombre
Me.Cbx_Nomarticles = ""
Me.Txt_nombre = ""

End If

End Sub

14stock-test1.xlsm (111.37 Ko)

Bonjour,

Si mon souvenir est bon > VLookup ne fonctionne que si la colonne est triée ...

Peut-être tester la commande FIND ...

ric

Bonjour, il y a plusieurs erreurs :

Pour commencer :

Part_prix = WorksheetFunction.VLookup(Me.Cbx_Nomarticles, Sheets("ARTICLE").Range("b:i"), 7, 0

Le nom de l'article ne se trouve pas en Colonne B mais en colonne D votre plage de recherche serait donc Range("D:K") et le décalage de 5 pas de 7

Ce qui veut aussi dire que vous ne pourrez pas récuperer les informations qui sont dans les colonnes précedent le nom de l'article ( "Nature" "Num article" )

Private Sub CommandButton1_Click()
Dim Part_Articles As Variant
Dim Part_prix As Currency

Part_prix = Application.WorksheetFunction.VLookup(Me.Cbx_Nomarticles.Text, Sheets("ARTICLE").Range("D:K"), 5, 0)

    'Remplir la zone de liste
    With Me.Liste_order
        .AddItem
        .List(memoire, 0) = Me.Cbx_Nomarticles
        .List(memoire, 1) = Part_Articles
        .List(memoire, 3) = CCur(Part_prix)
        .List(memoire, 4) = Me.Txt_nombre
        .List(memoire, 2) = Me.Cbx_activite
    End With
        memoire = memoire + 1

End Sub

Bonjour Xmenpl et ric,

Merci beaucoup de m'avoir répondu.

Et merci de m'avoir montré les subtilité sur Vlookup.

Je pourrais mieux réorganiser le tableau.

merci !!!!!!

Rechercher des sujets similaires à "erreur 1004 vlookup"