Gestion complète de Stock

Bonjour tout le monde,

Après multiples changements de mon classeur Stock, je pense avoir trouvé quelque chose de plus simple mais trop difficile pour moi en ce qui concerne le VBA pour faire fonctionner cela.

Explications:

A part la feuille "TDB" et "STOCK" il y a 3 feuilles supplémentaires "SORTIE DU JOUR, COMMANDE et ENTREE STOCK"

- sur ces trois feuilles, on se place sur B2 pour taper les premières lettres de l'article recherché et on presse la touche Entrée. Ensuite il affiche en colonne "D" les articles trouvés. On choisit ensuite l'article voulu, on double clique sur l'article et il vient s'afficher dans le tableau à droite(pareil pour les trois feuilles) il ne reste plus qu'a remplir les cellules de la colonne Qté.

Jusqu'ici tout va bien. Lorsque je clique sur "RAZ et Mise à jour stock", il mets à jour uniquement les deux premières lignes de mon stock. Donc même si je choisis un seul article par exemple " tomates " pour la sortie du jour , pour la commande ou pour entrée stock, il mettra à jour la première ligne de mon stock au lieu de mettre à jour la ligne des tomates dans le stock.

Alors est ce quelqu'un pourrai m'aider à rectifier ces erreurs SVP.

Je vous Remercie d'avance.

Cordialement Rubis5460

96gestion-stock.xlsm (234.57 Ko)

Bonjour,

Quelqu'un aurait un peu de temps à me consacrer pour terminer mon classeur ci-dessus.

Merci d'avance à tous

Cordialement Rubis5460

Bonjour,

Les logiciels de Gestion de stock ont leurs propres exigences (complexes) qui correspondent à une nécessité impérieuse au regard desquelles ton point de vue sur la simplification est sans intérêt. Réinventer une gestion de stock à ta façon à de forte chance de ne pas motiver les foules : C'est un peu comme si tu demandais de te réinventer un Concorde que tu puisses piloter toi-même et atterrir dans ton jardin...

A+

Bonjour,
Bien que le fil soit clos, je me suis permis d'apporter une solution avec le fichier ci-joint.

Un formulaire qui permet
- de créer un nouveau produit
- de modifier certaines données d'un produit existant
- de rechercher un produit en filtrant les données de la colonne Désignation
- de faire une sortie de stock avec écriture dans la feuille "SORTIE du JOUR" et mise à jour immédiat du stock restant.
- idem pour une entrée de stock et une commande
Tous les tableaux sont structurés.
Je n'ai pas touché aux macros de sauvegarde
CDT
Papy Henri

Bonsoir Papy Henri,

Merci beaucoup pour l'intérêt que vous portez à mon projet. Je serai chez moi demain matin et je regarderai ça et je vous tiens au courant, promis.

Merci encore et bonne soirée.

Cdt Rubis

Bonjour Papy Henri,

j'ai testé le classeur que vous avez très bien mis en place. C'est exactement ce que je recherche depuis le début.

Mais, il y a quelques petits soucis de fonctionnement si j'ai tout fais dans l'ordre.

J'ai remarqué que pour les sorties, les commandes et les entrées il ne place pas tout sur les formulaires à imprimer (ou alors je fais une mauvaise manipulation).

J'ai remarqué aussi que parfois il me dit "Qté choisie supérieure au stock réel" alors qu'il indique un bon stock largement disponible.

Pour terminer, lors de rajout de nouveaux produits, est ce que je peux faire un tri de A = Z pour remettre dans l'ordre ou comment ? je ne vois plus les boutons filtres.

Merci pour votre aide .

Cdt Rubis

A+

Bonjour Rubis,

Voici un nouveau fichier qui devrait répondre à vos besoins.
A l'ouverture du formulaire, seuls les boutons Ajouter et Quitter sont visibles. On peut ajouter un produit en saisissant au minimum le sous-rayon et la désignation. Il sera placé et trié en fonction de ces 2 colonnes.
Au click sur un produit dans la ListBox, le bouton Ajouter disparait , le bouton Modifier et la zone "Action sur le stock" apparaissent.
On peut modifier le sous -rayon, la désignation, le prix PUHT et la DLC. Le stock initial et le stock réel ne sont pas modifiables.
Pour faire une sortie du jour, renseigner la quantité. Les données transférées dans la feuille "SORTIE DU JOUR" sont Désignation, Qté, Unité, PUHT et le stock réel est mis à jour. Idem pour les Entrées.
Merci de tester ce nouveau fichier.
Papy Henri

Bonjour Papy Henri,

alors je viens d'essayer le fichier que vous avez envoyé.

lors d'un ajout de produit je choisis le rayon et j'inscris la désignation, or il me mets tout à la fin du stock sans faire le tri .

De même lorsque je fais une sortie de produits ou alors une entrée de produits il ne m'inscris pas tout dans les feuilles respectives.

Vous voudriez bien re essayer et me dire ce qui ne va pas SVP

Je vous Remercide d'avance.

Cdt Rubis

Re

Moi je n'ai aucun souci avec le fichier. Lors de la création d'un nouveau produit, il l'enregistre bien en dernière ligne, mais les 2 macros Tri_Stock et ReIndex_ID du module 3 viennent faire le ménage. Elles sont situées en fin du Private Sub suivant:

Private Sub CommandButton1_Click() 'Ajouter un produit
 Dim j As Long, i As Integer, No_ID As String
 'contrôle
 If TextBox6 <> "" And Not IsDate(TextBox6) Then
    MsgBox "Merci de saisir une date correcte."
    TextBox6 = ""
    TextBox6.SetFocus
    Exit Sub
End If

 With [Tab_1]
  If .Item(1, 2) <> "" Then j = .Rows.Count + 1 Else j = 1
  No_ID = "R" & Format(j, "0000")
    .Item(j, 1) = No_ID
    .Item(j, 2) = UCase(ComboBox1)
    .Item(j, 3) = Application.Proper(TextBox1)
    .Item(j, 4) = Application.Proper(TextBox2)
    If TextBox3 <> "" Then
    .Item(j, 5) = CDbl(TextBox3)
    .Item(j, 6) = CDbl(TextBox3)
    End If
  If TextBox5 <> "" Then .Item(j, 7) = CDbl(Application.WorksheetFunction.Substitute(TextBox5.Value, ".", ","))

  If TextBox6 <> "" Then .Item(j, 9) = CDate(TextBox6)
  End With
       MsgBox "Données enregistrées."
       If MsgBox("Un nouvel enregistrement?", vbYesNo) = vbYes Then
            For i = 1 To 6
                Me.Controls("TextBox" & i) = ""
            Next i
       Else
            Unload Me
       End If
  Tri_Stock
  ReIndex_ID
End Sub

Pour ce qui est du transfert des données dans la feuille "SORTIE DU JOUR", voici la partie du code qui écrit le Textbox1(Désignation) en colonne A, le TextBox8 (Qté) en colonne B, le TextBox2 (Unité) en colonne C, La Textbox5 (PUHT) en colonne D. Le calcul se fait automatiquement en colonne E.

Private Sub CommandButton5_Click() 'SORTIE DU JOUR
Dim derligne%
'contrôle du stock
    With [Tab_S]
    If .Item(1, 2) <> "" Then derligne = .Rows.Count + 1 Else derligne = 1
        .Item(derligne, 1) = TextBox1
        .Item(derligne, 2) = TextBox8
        .Item(derligne, 3) = TextBox2
        .Item(derligne, 4) = TextBox5
    End With

End Sub

Voici une autre version 3.

Re Papy Henri,

je suis vraiment désolé, mais ça ne fonctionne pas.

je fais un rajout il me mets en fin de stock et si je fais un deuxième rajout il le mets carément sur la ligne du premier rajout !

Pour les sorties ou entrées de stock c'est pareil il me fait tout bien à part sur les feuilles respectives à imprimer ou il n'inscrit que deux produits et c'est tout. Si j'en sors ou si j'en rentre plus il place le tout sur les autres lignes de départ.

Alors la je ne sais plus !!

A vous de me dire Papy Henri.

Merci à vous.

Bonjour Rubis

Je viens de tester sur mon PC Bureau avec la même version Excel (Office 2010) et l'application fonctionne correctement comme sur mon PC portable.
Désolé mais je ne peux pas tester avec office 365.
Essayer en testant pas à pas le formulaire (touche F8) pour voir où ça cloche.
Cdt
Papy Henri

Bonjour Papy Henri,

C'est noté. Il n'y a pas de soucis je verrai cela avec quelqu'un qui a peut-être les deux versions pour faire un test, car cela ne doit pas être grand chose vu que tout le reste fonctionne.

Je vous Remercie encore d'avoir pris le temps pour mettre tout cela en place. Châpeau.

Bonne continuation et je vous tiendrai au courant.

Cordialement Rubis

Bonjour Papy Henri

Merci encore pour votre travail sur mon projet. Tout fonctionne à part le séparateur décimal dans chaque cellule des feuilles "sortie, commandes et entrée"

il me place une virgule au lieu du point.

J'ai essayé en allant dans options mais cela ne change pas le problème.

Auriez-vous une petite idée ?

Merci d'avance

Cdt Rubis.

Bonjour Rubis
J'avais décoché ce sujet pour ne plus le suivre.

il me place une virgule au lieu du point comme séparateur décimal dans chaque cellule des feuilles "sortie, commandes et entrée" .

Cela me parait logique car, pour moi, ces cellules sont au format monétaire, ainsi que la cellule D1 (Total HT).

Si la colonne D (PUHT) est avec le point (ex: 23.52) on a une erreur pour la colonne E (Prix total) quand on multiplie D avec la quantité (colonne B)
Espérant avoir répondu à votre question.
Cdt
Papy Henri

Bonjour Papy Henri,

Merci d'avoir répondu, j'ai trouvé pour faire le changement et cela fonctionne.

Merci encore et bonne journée.

Cdt Rubis

Rechercher des sujets similaires à "gestion complete stock"