Mise en place d une gestion de stock

Bonjour a tous

Je suis dévutant en VBA et j'essai de mettre en place un base de donnée me permetant de gérer un stock.

Je vous expose mon problème. Un userform permet a un utilisateur de décrémenter un stock.

J'essai de trouver un code me permetant donc de pouvoir décrémenter mon stock sans avoir a utiliser l'imputbox de ce code :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Not Application.Intersect(Target, Range("A2:J70")) Is Nothing Then
     SUITE InputBox("Entrer la valeur", "saisie")
  End If
End Sub
Public Sub SUITE(Valeur As String)
 If vbOK = MsgBox("Valider la saisie de " & Valeur & " en " & ActiveCell.Address(False, False), vbOKCancel) Then
  ActiveCell.Offset(0, 9) = ActiveCell.Offset(0, 9) + Valeur
 End If

End Sub

¨

ou encore

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ERROR
Dim Message As String, Valeur As Long

With Target
    Select Case .Address(False, False)
        Case Is = "A1"
            GoTo SUITE
        Case Else
            Exit Sub
    End Select

SUITE:
    Application.EnableEvents = False

    If .Address(False, False) = "A1" Then
Valeur = .Value
        Message = "Valider la saisie de " & Valeur & " en " & .Address(False, False)
        If MsgBox(Message, vbYesNo + vbDefaultButton2) = vbNo Then GoTo FIN
        Range("B1").Value = Range("B1").Value + Valeur

    End If

FIN: .Value = Empty
End With

Application.EnableEvents = True

Exit Sub
ERROR:  MsgBox Err.Description: Resume FIN
End Sub

Pour le premier code, il faut obligatoirement etre dans la feuill concerné et rep a limputbox pour que ca marche et dans mon cas j aimerai qu une fois la validation de mon userform effectué cela ce face automatiquement

Pour le 2 eme code, j ai réussi a l'adapter pour pas avoir de validation a saisir mais le pb c'est que je dois saisir manuellement toute les case sur lequel mon stock est décrémenté.

ce que j'aimerai :

Un code qui permet de selectionné n importe quel cellule de A1 a A90 et la place de D1 a D90. en l'incrémentant de sa valeur.

par exemple si je saisi 3 dans A3

La placer dans D3 remettre a zéro A3 et ainsi de suite. si je saisi désormé de nouveau dans A3 : 4 il affichera dans D3 : 7 et le tout sans dialogue (sans imputbox)

Bonjour

Essayes ce code

Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Range("A1:A90"), Target) Is Nothing And Target.Count = 1 Then
    If IsNumeric(Target) Then
      Target.Offset(0, 3) = Target.Offset(0, 3) + Target
      Application.EnableEvents = False
      Target = ""
      Application.EnableEvents = True
    End If
  End If
End Sub

Bonjour banzai 64 et merci de ta reponse aussi rapide

Ton code marche parfaitement le seul problème c'est que je vais chercher la valeur a incrémenter dans une autre feuille. je vais m'expliquer en prenant un exemple.

Je suis en feuille 1 je saisie une reférence et une quantité

En feuille 2 j ai toute mes references en fonction de la référence saisie en feuille 1, j'ai la quantité qui vien avec et qui s'incrémente si la meme reference est ressaisit a nouveau.

J'utilise la fonction : si(A$1=A2,A$2,0) pour rechercher la quantité saisi

Donc ma quantité ce met bien en face de la référence.

Le seul problème que j'ai c'est que avec ce code je suis obligé de resaisir manuellement la quantité pour que le stock s'incrémente.

Ex en feuille 1 par l'intermédiaire d'un userform je saisi une quantité et une référence.

En feuil 2 colonne A référence colonne B Quantité obtenu avec la fonction si Colonne C quantité que je resais actuellement manuellement (la ou ce situe le pb) Colonne D quantité totale ( égale a D+C)

Bonjour

Le mieux serait de joindre un fichier représentatif de ton fichier réel

Dans la feuille rob, un bouton est utiliser pour appeler un userform. Les données saisi vont dans history

(ne pas oublier de mettre le num se serie corespondant en dessous de assembly) ainsi, une fois la quantité saisi ainsi que la référence, les données sont envoyé a la feuil rob sur la colonne F. de la j aimerai que cette quantité soit copier et coller en G afin de pouvoir incrémenter mon stock avec le code que tu as pus me donner. Gspr vrmt k tu comprendras.

Le truc c k avant de commencer cette base il ne m'on pas donner toute les cartes en main donc j'ai du madapter au fur et a mesure...

159rcbase2.xlsm (135.98 Ko)

Bonjour

Pas sur d'avoir tout saisi

Merci a toi benzai64 c'est exactement ca!!!

Rechercher des sujets similaires à "mise place gestion stock"