Gestion de stock

Bonjour

Je veux mettre en place une gestion de cosmétique avec excel vba j'aimerai bien avoir votre avis pour bien commencer mon projet j'ai preparer la structure vous on dites quoi ?

1-Articles – liste des produits avec code-barres, prix, promo, etc.

2-Stock – suivi des quantités avec FIFO/LIFO.

3-Achats – historique des entrées de stock (achats, réapprovisionnement).

4-Ventes – historique des ventes.

5-Mouvements – résumé de tous les mouvements de stock (entrées + sorties).

6-AlertesStock – pour les alertes de stock faible.

7-Promotions – gestion des promotions et choix utilisateur sans alerte.

8-TicketsCaisse – pour l’impression des tickets.

9-Paramètres – configuration générale (FIFO/LIFO, seuils, etc.).


Feuille : Article
Champ Type / Description
ID_Article Numérique ou alphanumérique unique
Code_Barre Texte, code-barres du produit
Nom_Article Texte
Description Texte optionnel
Prix_Unitaire Numérique
Unité Texte (ex: pièce, kg…)
Promo_Active Oui/Non
Prix_Promo Numérique (si promo active)
Date_Debut_Promo Date
Date_Fin_Promo Date
Stock_Minimum Numérique pour alerte stock faible

Feuille : Stock
Champ Type / Description
ID_Stock Numérique unique
ID_Article Lien vers Articles
Quantité_Disponible Numérique
Quantité_Reserved Numérique pour commandes en cours (optionnel)
Méthode_Valorisation Texte (FIFO / LIFO)
Date_Dernière_MAJ Date

Feuille : Achat
Champ Type / Description
ID_Achat Numérique unique
ID_Article Lien vers Articles
Quantité Numérique
Prix_Unitaire Numérique
Date_Achat Date
Référence Texte (optionnel, bon de livraison ou note interne)
Stock_Affecté Oui/Non, pour savoir si la quantité a été ajoutée au Stock

Feuille : Vente
Champ Type / Description
ID_Vente Numérique unique
ID_Article Lien vers Articles
Quantité Numérique
Prix_Unitaire Numérique
Prix_Total Calculé automatiquement
Date_Vente Date
Ticket_ID Lien vers TicketsCaisse

Feuille : Mouvements
Champ Type / Description
ID_Mouvement Numérique unique
ID_Article Lien vers Articles
Type_Mouvement Texte (Entrée / Sortie)
Quantité Numérique
Date_Mouvement Date
Référence Lien vers Achats ou Ventes
Solde_Après_Mouvement Numérique, pour suivi FIFO/LIFO

Feuille : AlertesStock
Champ Type / Description
ID_Article Lien vers Articles
Quantité_Disponible Numérique
Seuil_Alert Numérique (reprend Stock_Minimum)
Alerte_Active Oui/Non
Date_Alert Date de génération de l’alerte

Feuille : Promotions
Champ Type / Description
ID_Article Lien vers Articles
Promo_Active Oui/Non
Prix_Promo Numérique
Date_Debut_Promo Date
Date_Fin_Promo Date
Alerte_Promo Oui/Non, si on veut alerter sur promo proche

Feuille : TicketsCaisse
Champ Type / Description
Ticket_ID Numérique unique
Date_Ticket Date
ID_Article Lien vers Articles
Quantité Numérique
Prix_Unitaire Numérique
Prix_Total Calculé
Mode_Paiement Texte (espèces, carte…)

Feuille : Paramètres
Champ Type / Description
Méthode_Stock FIFO / LIFO
Seuil_Alerte_Global Numérique
Imprimer_Ticket_Automatique Oui/Non
Activer_Promo Oui/Non
Format_Date Texte (jj/mm/aaaa, mm/jj/aaaa…)

Userforms
UF_Articles – gestion des articles (ajout, modification, suppression)

UF_Stock – suivi et mise à jour du stock

UF_Achats – enregistrement des achats / réapprovisionnements

UF_Ventes – enregistrement des ventes

UF_Mouvements – consultation des mouvements de stock

UF_AlertesStock – affichage des alertes de stock faible

UF_Promotions – gestion des promotions

UF_TicketsCaisse – génération et impression des tickets

UF_Paramètres – configuration des paramètres généraux

Bonjour

et félicitations car ça c'est un travail bien préparé.

Si tu as besoin d'aide n'oublie pas de mettre un fichier.

Je te conseille des tableaux structuré sur tes feuilles (avec un nom qui correspond (exemple: T_article)

A+ François

bonjour nabilexcel2007, salut fanfan38,

même réflections que fanfan38, mais c'est aussi plus pratique de ne pas utiliser des accents dans les entêtes de vos tableaux structurés, comme VBA est en anglais et ne les aime pas, donc ce sera "entree" au lieu de "entrée" par exemple.

Merci a vous

Bonjour

Je vais mettre en place les userforme avec ses composants et vous me dites

juste une question s'il vous plait dans la feuille Produit

est ce qu' on met prix achat et prix vente ou bien seulement prix vente

Merci

Ah! si dessus tu n'as pas de feuille produit.

Dans la feuille stock il vaut mieux avoir les 2

il serait aussi souhaitable d'avoir une feuille client ...

le paragraphe 5 fait redondance avec le 3 et 4...

Ci joint un fichier de stock....

A+ François

ces prix, si le produit vient de 2 lots avec des prix différents seront des prix pondérés, donc une difficulté supplémentaire dans un système "FIFO".

La feuille "mouvements stocks" a peut-être besoin d'une colonne "LOT" ?

Bonjour à tous,

@Bart, Salut, quand vous dites :

mais c'est aussi plus pratique de ne pas utiliser des accents dans les entêtes de vos tableaux structurés, comme VBA est en anglais et ne les aime pas, donc ce sera "entree" au lieu de "entrée" par exemple.

C'est n'est pas vrai, il ne faut pas confondre une variable, avec l'appel d'un tableau.

Dans ce cas c'est une chaine qui est fournie a VBA vous pouvez donc utiliser les accents.

image

Par contre si c'est pour une variable, là je suis d’accord avec vous si possible pas d'accents.

image

@Nabilexcel2007, si vous avez la possibilité de travailler avec Access je vous le conseille, vous allez passer beaucoup de temps pour créer une application qui soit un tant soit peu potable. Sous Access cela peut être fait en deux trois jours. avec en plus des outils pour l'impression et autres...

Vous pouvez même télécharger des ressources toutes faites, que vous pourrez modifier.

Bonjour à tous,

@Jean-Paul, @BsAlv,

Est-ce que vous auriez un exemple simple (pas un truc de geek) dans lequel les accents posent problèmes en Vba ?

Bonsoir,

Learn Microsoft écrit :

Règles d’affectation de noms Visual Basic

Appliquez les règles suivantes lorsque vous nommez des procédures, des constantes, des variables et des arguments dans un module Visual Basic :

  • Vous devez utiliser une lettre comme premier caractère.
  • Vous ne pouvez pas utiliser un espace, un point (.), un point d’exclamation ( !) ou les caractères @, &, $dans # le nom.
  • La longueur du nom ne doit pas dépasser 255 caractères.
  • En règle générale, vous ne devez pas utiliser de noms identiques aux noms de fonction, d’instruction, de méthode et de constante intrinsèque utilisés dans Visual Basic ou par l’application hôte. Sinon, vous finissez par masquer les mêmes mots clés dans la langue. Pour utiliser une fonction, une instruction ou une méthode de langage intrinsèque qui est en conflit avec un nom attribué, vous devez l’identifier explicitement. Faites précéder la fonction intrinsèque, l’instruction ou le nom de la méthode par le nom de la bibliothèque de types associée. Par exemple, si vous avez une variable appelée Left, vous pouvez uniquement appeler la fonction Left à l’aide VBA.Leftde .
  • Vous ne devez pas répéter de noms dans le même niveau de portée. Par exemple, vous ne pouvez pas déclarer deux variables nommées age dans la même procédure. Toutefois, vous pouvez déclarer une variable privée nommée age et une variable de niveau procédure nommée age dans le même module.

Il n'est pas indiqué de ne pas utiliser les accents... l'avantage de ne pas en mettre c'est que l'on peut oublier de les mettre sans que cela influe sur le fonctionnement du code !
Perso j'utilise les variables "compréhensibles" avec au moins une majuscule, comme cela en écrivant en minuscule, VBA corrige la majuscule et je vois que je n'ai pas fait d'erreur de saisie. Exemple une variable de boucle Dim Bcl as Integer: For Bcl = 1 to 10

@ bientôt

LouReeD

Bonjour à tous,

@Jean-Paul, @BsAlv,

Est-ce que vous auriez un exemple simple (pas un truc de geek) dans lequel les accents posent problèmes en Vba ?

Bonjour à tous,

En fait c'est une source d'erreur assez typique du type "je ne comprends pas ca fonctionne sur mon PC mais pas sur le tien" : les accents ne sont pas toujours encodés de la même manière d'un système d'exploitation à l'autre, et en plus de cela l'environnement de développement (VBE ici) peut avoir du mal à basculer/convertir entre les différents systèmes d'encodage de texte (UTF8, ANSI "Windows-1252", etc.). Un exemple frappant, ce sont les caractères spéciaux (comme œ, alphabet cyrillique ou chinois) qui s'affichent bien dans le classeur (encodé en UTF8) mais pas du tout dans la fenêtre d'exécution immédiate du VBE (en ANSI).

Personnellement, étant sur un PC avec un Windows en-US, il m'est arrivé en ouvrant certains fichiers du forum avec du code avec des accents d'avoir des "é" ou "è" dans le code, ce qui l'empêchait de compiler.

Ainsi donc, même si c'est assez rare de rencontrer une erreur due aux accents dans nos usages courants, il est bon de garder en tête que cela peut mener à des plantages imprévus. C'est pourquoi vous lirez dans tous les guides de "bonnes pratiques" d'éviter les accents dans le code en dehors des chaines de texte. Ça permet tout simplement d'éliminer une potentielle source de bugs.

re,

ce que Saboh12617 décrit, je l'ai eu dans une autre discussion. Dans mon fichier et mon PC, tout fonctionnait (à ce moment excel2016 version néerlandophone), mais cela causait des problèmes sur le sien (version ???, je me rappèle plus, français ou anglais et <> de moi). Donc depuis ce moment, j'évite le max possible les accents dans VBA et y inclu par excemple les noms des listcolonnes qu'on utilise dans VBA. Et peut-être, si tous les versions Excel sur tous vos ordinateurs sont pareil, vous n'aurez pas se problème.

Bon, mais c'est votre choix ...

Bonjour à tous,

@LouReed, @saboh12617, @BsAlv, merci de vos réponses qui m'éclairent plus et qui montrent bien que pour l'utilisation limité que j'en ai tout seul dans mon coin je n'ai pas de problèmes, mais méfiance dans de rares cas de partage.

Bonjour,

Pour ce qui concerne le modèle de données, il manque dans la feuille stocks, une donnée : la date d'entrée en stock nécessaire pour une méthode LIFO/FIFO, inutile pour une méthode PMP.

Bonjour

s'il vous plait je suis perdu j'ai besoin d'une bonne structure des feuilles excel pour une gestion de stock et vente par code barre

fifo et lifo et alerte stock et promo au choix de l'utilisateur ,et bénéfices

juste les feuilles avec leurs entêtes c'est tout s'il vous plait

Merci

Hello,

pour en ajouter une petite couche sur le fait d'éviter les accents...

Il m'est arrivé d'envoyer un classeur fait avec Excel Windows (avec des accents donc dans le VBA) et la personne qui l'a modifié avait un Mac !!! je vous laisse imaginer les dégats

Bonsoir à toutes et à tous.

Nabilexcel2027, Je vous mets un fichier en pièce jointe : si cela peut vous inspirer.

On peut adapter en fonction de vos besoins.

22essai.zip (309.11 Ko)

Bonjour structure des feuilles manqjantes

S il vous plait je n ais.mas besoin de code vba

Tout ce que je veux c'est les feuilles avec leurs colonnes c'est toit

Merci

Bonjour c une bonne structure sa

FEUILLE PRODUITS
Code_Barre
Nom_Produit
Marque
Stock_Actuel
Seuil_Minimum
Prix_Vente
Date_Expiration
Date_Achat
Stock_Theorique

USF_PRODUITS
LblTitle
TxtCodeBarre
TxtNom
TxtMarque
TxtStockActuel
TxtSeuilMin
TxtPrixVente
TxtDateExpiration
TxtDateAchat
ListBoxProduits
CmdAjouter
CmdModifier
CmdSupprimer
CmdAnnuler
CmdFermer
LblAlerteStock
LblPeremption
LblNombreProduit

FEUILLE ACHATS
Date_Achat
Code_Barre
Nom_Produit
Marque
Quantite_Achetee
Prix_Achat
Lot
Date_Expiration
Prix_Total

USF_ACHATS
LblTitle
TxtCodeBarre
TxtNomProduit
TxtMarque
TxtQte
TxtPrixAchat
TxtLot
TxtDateAchat
TxtDateExpiration
TxtPrixTotal
ListBoxAchats
ComboProduit
CmdAjouter
CmdModifier
CmdEnregistrer
CmdAnnuler
CmdFermer
LblInfoLot

FEUILLE HISTORIQUE
Type_Operation
Code_Barre
Nom_Produit
Quantite
PrixUnit
Date
Heure
Ticket

USF_HISTORIQUE
CmbTypeOperation
TxtDateDebut
TxtDateFin
TxtRechercheHistorique
ListBoxHistorique
CmdFiltrer
CmdExporterHistorique
CmdAfficherDetails
CmdFermer
LblTotalOperations
LblTotalMontant
FraFiltres

FEUILLE LOTS
ID_Lot
Code_Barre
Quantite_Achetee
Quantite_Restante
Prix_Achat
Lot
Date_Achat
Date_Expiration
Statut

FEUILLE VENTES
ID_Vente
Date_Vente
Code_Barre
Nom_Produit
Quantite
Prix_Vente
Total
Ticket
Methode_Stock

USF_VENTES
LblTitle
TxtCodeBarre
TxtNomProduit
TxtMarque
TxtQteVente
TxtPrixVente
TxtTotal
TxtTicket
ListBoxVentes
CmdAjouterVente
CmdAnnulerVente
CmdFermer
LblInfoStock
ComboMethode

FEUILLE PARAMETRES
Nom_Parametre
Valeur

USF_PARAMETRES
FrameMethode
OptionFIFO
OptionLIFO
OptionCMUP
CmdEnregistrer
CmdAnnuler
LblInfoMethode

FEUILLE STOCK_ALERTES
ID_Alerte
Code_Barre
Nom_Produit
Type_Alerte
Date_Alerte
Statut

USF_ALERTES
LblTitle
ListBoxAlertes
CmdVoirDetails
CmdMarquerResolu
CmdFermer
LblNombreAlertes

FEUILLE INVENTAIRE
Date_Inventaire
Code_Barre
Nom_Produit
Stock_Reel
Stock_Theorique
Ecart
Responsable

USF_INVENTAIRE
LblTitle
TxtDateInventaire
ListBoxInventaire
CmdDemarrerInventaire
CmdValider
CmdExporter
CmdFermer

Merci

Rechercher des sujets similaires à "gestion stock"