Ajout sur la liste de commande via vlookup VBA

BENAM69

XLDnaute Occasionnel
Bonjour,

Je me permets de rechercher de l'aide ici. En effet, je suis coincé sur ma programmation.

La fonction vlookup ne fonctionne pas et je n'arrive pas à déterminer pourquoi.

J'ai sur l'onglet 3 un bouton de commande, qui ouvre une fenêtre, sur cette fenêtre il y a un certains nombre d'information à saisir. Le bouton ajouter à l'intérieur de cette fenêtre permet d'ajouter les informations dans le cadre (J'arrive à intégrer l'article mais le reste ne fonctionne pas, il me faut ajouter le nom, le prix et le nombre)

Ma recherche Vlookup ne fonctionne pas alors que je suis sur qu'il n'y a aucun problème sur l'écriture de ma formule.

Une personne du forum pourrait-il m'aider à débloquer la situation svp ?

En somme ce que je veux :
C'est au moment d'appuyer sur le bouton "ajouter", il apparaît sur la liste l'article, le nom, le prix et le nombre (voir onglet 3 du fichier pour le bouton de commande)

Merci à la personne qui pourra m'aider. (voir en PJ le fichier)

Benam
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans le fichier joint, une autre façon de retrouver un article par la fonction Equiv (Application.Match). Le Tableau des articles a été nommé T_Articles.
Avec les tableaux structurés vous n'avez pas besoin de savoir le nombre de lignes qu'il comportent, eux le savent très bien en interne. Cela simplifie grandement les choses en VBA. C'est une très mauvaise habitude que de lancer des fonction (VLookUp ou autre) sur des colonnes entières, vous risquez d'avoir et des problèmes de fuite de mémoire et de ralentissement.

Quant à votre listbox List_Order, vous aviez oublié de renseigner sa propriété .ColumnCount, elle n'avait donc qu'une colonne d'affichage.

Bon après-midi

Edit: vous venez de mettre votre discussion en RESOLU mais sans dire comment vous l'aviez résolue.
 

Pièces jointes

  • BENAM69-Roblochon.xlsm
    233.7 KB · Affichages: 13

BENAM69

XLDnaute Occasionnel
Salut Roblochon,

Je te remercie grandement pour ton retour rapide.

Je n'avais pas pensé et n'ai jamais utilisé la fonction EQUIV sur VBA. En effet, tu as totalement raison et te remercie pour m'avoir notifié ce détail et ce qui en suit.

L'erreur venait, comme indiqué sur ta réponse sur la partie "propriété", ColumnCount. J'avais cru avoir mis 4 au lieu de 1. D'où le non fonctionnement total de mon besoin. Mais elle venait aussi de mon code, j'avais mis ">= 0 = 0" au lieu de ">=0", c'est pour cela que cela ne fonctionnait pas et qui plu est VBA ne m'a pas mis en jaune cette ligne mais celle du dessous. C'est pour cela que j'ai pris du temps avant de retrouver cette erreur.

Quant à la partie RESOLU, j'avais écris la réponse mais cela n'a pas pris en compte, sûrement un problème de réseau de mon coté. Mea Culpa. Merci encore pour ton œil vigilant ^^.

En tout cas encore un merci pour ton aide si précieuse.

A+

Benam
Bonjour,

Dans le fichier joint, une autre façon de retrouver un article par la fonction Equiv (Application.Match). Le Tableau des articles a été nommé T_Articles.
Avec les tableaux structurés vous n'avez pas besoin de savoir le nombre de lignes qu'il comportent, eux le savent très bien en interne. Cela simplifie grandement les choses en VBA. C'est une très mauvaise habitude que de lancer des fonction (VLookUp ou autre) sur des colonnes entières, vous risquez d'avoir et des problèmes de fuite de mémoire et de ralentissement.

Quant à votre listbox List_Order, vous aviez oublié de renseigner sa propriété .ColumnCount, elle n'avait donc qu'une colonne d'affichage.

Bon après-midi

Edit: vous venez de mettre votre discussion en RESOLU mais sans dire comment vous l'aviez résolue.
 

Discussions similaires

Statistiques des forums

Discussions
314 628
Messages
2 111 337
Membres
111 107
dernier inscrit
cdel