Excel VBA calcul

Bonjour! je m'exerçais un peu a excel vba et j'ai rencontré un petit dilème l'exercice est de la gestion de stock

a chaque fois que je valide une commande je souhaite que le logiciel récupère le numéro du produit qui est en "H10" fasse une recherche dans le tableau "articles" qui est sur la feuille "articles" et face la soustraction de la valeur du stock en "j8" résultat qui sera ensuite récupéré par J8.

et je but un peu sur la recherche merci

Bonjour

Sans ton fichier, il est difficile de t'aider...

Bye !

le voici

5genesys1.xlsm (122.50 Ko)

dans le fichier vous trouverez les feuilles en question ainsi que le code VBA derriere le bouton

Bonjour

Un essai à tester. Te convient-il ?

2genesys1-v1.xlsm (134.54 Ko)

Bye !

Bonjour gmb merci ce code fonctionne mais à un détail prêt lors du débogage afin de comprendre ton code Excel m'a sur la ligne du code ci dessous que l'indice n'appartient pas à la sélection je viens de voir que la cellule sélectionnée a ce niveau est j19 si tu peux m'indiquer ce j19 représente je pourrais peut corriger

Sub AfficherLaCommande()

Set fArt = Sheets("articles")
tablo = Range("J19").CurrentRegion
If tablo(2, 1) = "" Then
MsgBox ("Aucune commande enregistré")
Exit Sub
End If

aussi au niveau des résultats ce que je souhaite ce n'est pas vendre seulement ce qui est disponible mais juste informer le client qu'il ne pourra pas avoir le nombre demandé cela empêche que le client soir contraint à payer pour le nombre qu'il n'a pas demandé enfin tu as fait un super boulot mais il est un peu difficile à comprendre si ce n'est pas trop te demander est ce que je peut avoir des commentaire ou un explication détaillée qui m'aidera a comprendre et surtout pour d'éventuels projets

gmb j'oubliais je remarque aussi que lorsque le stock n'est pas suffisant il mettait simplement le stock présent à zéro ce qui est dérangeant mais j'ai pu corriger cette ligne

en supprimant cette ligne de code

fArt.Cells(ln, 8).Value = 0

je ne sais pas si ca aura des répercutions mais je continu d'explorer le code c'est cool d'apprendre avec vous !

j'ai une dernière préoccupation je me rend compte que lorsque je veux valider une commande de plus ou moins 3 articles il me met en erreur: variable objet ou variable de bloc with non définie en me mettant cette ligne en surbrillance

ln = fArt.Range("B:B").Find(tablo(i, 3), lookat:=xlWhole).Row

alors je me rend compte que Find(tablo(i, 3) est une contrainte d'enregistrement vu que je n'ai pas recu plus d'information sur le code. je me dit peut être que si je l'agrandit ca peut tous dérégler

Rechercher des sujets similaires à "vba calcul"