Excel gestion de stock

Bonjour à tous,

Je possède un fichier Excel pour la gestion des stocks de mon entreprise d'électricité et je souhaite ajouter un champ dans l'onglet "Inventaire" pour y inscrire le prix unitaire HTVA lors de l'ajout ou de la mise à jour d'un matériel. De plus, je voudrais que la valeur totale de mes stocks soit calculée en fonction des quantités en stock.

image image

Enfin, je recherche de l'aide pour réaliser ces modifications car je suis un peu perdu.

Je vous remercie d'avance pour votre aide.

Bonjour Mytyck

Pour commencer, c'est du joli travail

Sinon, merci de bien vouloir mettre dans votre profil, la version d'Excel utilisée SVP (Ex. O365 Fr)
et non "VBA" qui ne veut rien dire

Ensuite le PUHT n'est pas à mettre dans "Inventaire", mais dans la feuilles des "Entrées"
je ne pense pas que vous achetez votre matériel toujours au même prix

De plus, ne s'agit-il pas d'un doublon avec la demande ICI ?
https://forum.excel-pratique.com/excel/prix-unitaire-et-prix-total-d-un-stock-excel-gestion-de-stock...

A+

Bonsoir ,

Désolé je débute sur le forum donc compliqué de m’y retrouver j’ai de plus créer deux sujets sans faire exprès haha.

Oui j’entends bien que je dois mettre dans « entrée » , mais J’aimerai pouvoir faire une estimation de la valeur de mon stock actuel en ajoutant simplement le prix des pièces sur les sites de nos fournisseurs !

Bonjour,

les deux sujets équivalents sont tous les 2 à l'état Résolu. Est-ce le cas ?

je réponds donc à celui-ci, ou plutôt, je pose quelques remarques/questions :

- C'est une application complète de gestion des stocks qui a été développé, techniquement de manière "professionnelle" (protection, contrôles de saisie, gestion d'erreurs...). Vous dites être perdu, j'imagine donc que ce n'est pas vous qui l'avez réalisé. Vous en avez une utilisation professionnelle, donc les modifications apportées doivent absolument être fiables et donc testées en conséquence, ce que vous seul ou votre équipe pouvez faire.

- Quel est votre niveau d'Excel ? Débutant ?

- La colonne PU à ajouter dans l'onglet "Inventaire" correspond bien à celle de l'Onglet "Entrées" ?

- Pour la colonne Prix du stock, le calcul sera simple puisque tout est sur la même ligne (le produit du PU * nombre de pièces en stock)

Le principe général pour ces compléments (désolé si je suis un peu technique) :

Ajouter la colonne PU (après la colonne Stock actuel ?). Elle ne doit pas être modifiable. Elle doit être mise à jour à chaque modification du PU sur l'Onglet "Entrées". Ce qui peut être détecté par un événement "Worksheet_Change". Votre Gestion des Stocks est-elle suffisamment "blindée" pour par exemple interdire la suppression d'une pièce, ce qui pourrait poser problème pour le PU si on ne le gère pas correctement ?

Ajouter la colonne Prix du Stock (à la suite de la colonne PU ?). La valeur est une simple formule basée sur le PU et la quantité en stock, donc aucun problème.
Ajouter le total € du stock en ligne 1 comme pour la quantité en stock : aucun problème c'est la même formule.

voici en pj, une proposition d'adaptations Évidemment sans garantie de ma part avec les remarques suivantes :

Je n'ai pas touché au code VBA.

Pour tester, ne connaissant évidement pas votre application dans les détails, j'ai dû sélectionner la pièce 4000 dans l'Onglet "Entrées". Je ne comprends pas pourquoi il n'y a qu'une seule ligne sur cet Onglet, ce qui pose un problème puisque le PU Stock s'appuie sur les valeurs de l'Onglet "Entrées".
A tester en jouant sur toute l'application pour validation.

J'ai juste ajouté les 2 colonnes demandées et le total global avec les formules suivantes pour
- Colonne Prix Unitaire Pour la cellule E4 propagée sur toutes les lignes qui suivent.
- Colonne Prix Stock Pour la cellule F4 propagée sur toutes les lignes qui suivent.
- Pour le prix total stock Cellule F1

=SIERREUR(RECHERCHEV(A4;Entrées!$C$4:$F$4;4;FAUX);0)
=D4*E4
=SOUS.TOTAL(9;F3:F283)

Je complète ma réponse précédente après avoir navigué dans votre application et examiné de plus près le code Excel existant.

- Dans le code, les différentes colonnes de l'Onglet "Inventaire" sont évaluées de manière statique, par exemple dans le code ci-dessous, Le Descriptif est en colonne F.
De ce fait après insertion des colonnes "Prix Unitaire" et "Prix Stock", comme je l'ai fait dans mon fichier, il y a un décalage, le "Descriptif" passe en colonne H ce qui génère évidemment des erreurs, par exemple lors de l'ajout d'une nouvelle Pièce, le "descriptif" saisi est affecté dans la colonne "Prix Stock", le "seuil d'alerte" dans la colonne "Prix Unitaire" ...

With Worksheets("Inventaire")
    MonLibellé = .Range("A" & MaLigne).Value
    MaCatégorie = .Range("B" & MaLigne).Value
    MonStockInitial = .Range("C" & MaLigne).Value
    MonSeuilAlerte = .Range("E" & MaLigne).Value
    MonDescriptif = .Range("F" & MaLigne).Value
    MonStockage = .Range("G" & MaLigne).Value
    MesObservations = .Range("H" & MaLigne).Value
    MonAncienLibellé = .Range("A" & MaLigne).Value

- Dans ma 1ère réponse, j'ai supposé que toutes les pièces de l'Onglet "Inventaire" étaient également présentes dans l'Onglet "Entrées". Est-ce le cas ?
Quand on créé une pièce, le PU n'est pas demandé, la pièce est ajoutée dans l'Onglet "Inventaire". C'est uniquement lorsque l'on créé une Entrée pour cette pièce que l'on indique le PU et que pourra être récupéré le PU dans l'Onglet "Inventaire" qui par défait sera valorisé à 0.

Je pourrai vous proposer un autre fichier qui tient compte de ces nouveaux éléments.
Avant, j'attends votre retour.

Je complète ma dernière réponse :
j'ai effectué toutes les modifications de code et également dans l'onglet "Inventaire". En particulier, j'ai dû créé Un nouveau nom "Liste_Entrées" dans le Gestionnaire des noms (désolé pour l'aspect technique) pour la formule permettant de récupérer le PU Stock.
Pour effectuer mes tests, j'ai créé 3 pièces de test avec des mouvements d'entrées.
Pour les pièces existantes de l'onglet "Inventaire", j'ai dû "étendre" les 2 formules des colonnes "Prix Unitaire" et "Prix Stock". En effet (désolé d'être technique), la création des formules est effectuée sur l'ajout d'une nouvelle pièce.

La formule pour le PU Stock (ici pour la ligne 4)

=SIERREUR(RECHERCHEV(A4;Liste_Entrées;4;FAUX);0)

Dans le code, les nouvelles lignes ou celles remplacées sont identifiées par 'nouveau code du 26/04/2023.
Les anciennes lignes sont mises en commentaires. Par exemple :

    'Prix Unitaire (nouvelle colonne E)  'nouveau code du 26/04/2023
    Formule = "=sierreur(recherchev(A" & MaLigne & ";Liste_Entrées;4;faux);0)"
    Range("E" & MaLigne).FormulaLocal = Formule

    'Prix Stock (nouvelle colonne F)  'nouveau code du 26/04/2023
    Formule = "=D" & MaLigne & "*E" & MaLigne
    Range("F" & MaLigne).FormulaLocal = Formule

    'Car 1 (colonne E)
    '.Range("E" & MaLigne).Value = MonSeuilAlerte
    .Range("G" & MaLigne).Value = MonSeuilAlerte  'nouveau code du 26/04/2023

Bonjour Clr ,

Tout d'abord , merci de ton intervention. Désolé pour le délais de réponse mais j'étais en déplacement toute la semaine :)

Effectivement j'ai essayé d'adapter un Excel déja existant pour qu'il corresponde à mes besoins du moment. (je suis loin d'être un expert en excel mais cela me permet d'apprendre beaucoup).

Ici le but est de pouvoir valoriser le stock existant que je suis en train de lister (réalisation d'un inventaire complet du stock des pièces disponibles dans notre entrepôt).

Cet excel de gestion de stock est juste un fichier de transition pour implémenter notre stock dans notre futur ERP.

La valeur de la marchandise dans l'onglet inventaire est donc une valeur théorique en fonction des prix que nous avons chez notre fournisseur. Le prix unitaire dans l'onglet "Entrée" est le prix que nous avons eu lors de notre commande. Il est evidemment variable.

Je comprends que tu veuilles lier donc la valeur reprise dans "Entrée" et celle dans "Inventaire" mais justement ici c'est fait exprès.

J'espère que tu comprendras mes explication.

Tu trouveras le fichier que j'utilise pour le moment ou Bastr m'a beaucoup aidé. Si jamais tu as une piste d'amélioration ou quoi je suis toujours preneur !

Cordialement ,

Mytyck

Ps: Voici la toute dernière version :)

Bonjour,

j'ai regardé votre version élaborée avec les conseils de bastr. Rien à dire, tout est Ok.
Je n'avais pas compris que le PU devait être fixé sur le formulaire de création dans l'inventaire et non pas récupéré des Entrées.
Juste une remarque : Il semble que vos échanges avec bastr se soient faits en privé. Dans ce cas, je vous suggère, à vous (ou ici bastr), de créer une réponse "de signalement" qui indique que le sujet est en cours de traitement "en privé" ...
Cette information permettra aux personnes qui se penchent également sur le sujet de le faire (ou pas) en le sachant. Le but final étant que le sujet soit résolu et pas forcément d'avoir 10 solutions. J'exagère.

Bonne continuation

Bonjour clr, Mytyck, le fil, le forum,

Les échanges entre Mytyck et moi sont sur un autre fil :
https://forum.excel-pratique.com/excel/erreur-programme-gestion-de-stock-183382

Le code du fichier aurait encore un peu d'amélioration sur la déclaration des variables.

Exemple :

Dim MaDate As Date, MaRéférence, MaPièce, MonFournisseur, MesObservations As String

MaRéférence, MaPièce et MonFournisseur sont de type "Variant" car ils ne sont pas typées.

Seules MesObservations est de type String et MaDate est un type Date.

C'est un beau projet.

Bastr

Pour Mytyck et bastr,

j'ai joué à pile ou face et suis donc tombé sur le sujet non suivi.
Ne tenez donc pas compte de ma remarque précédente.
Pour les améliorations d'une application, on peut toujours faire mieux mais il faut savoir dire "là, c'est bon", dès lors que c'est juste. Ce qui me parait être le cas.

Rechercher des sujets similaires à "gestion stock"