Programme Excel avec formules et macros

Bonjour à tous

Je suis nouveau sur le forum et novice en VBA, mais comme vous tous passionné.

Je suis en train de créer une base de donnée Excel pour mon boulot qui permet de faire une gestion de stock (création à mon niveau bien sûr ). Elle est quasiment fini, mais je bloque sur certains points (formules Excel et cellules liées).

Je vous explique le fonctionnement:

C'est une gestion de stock en temps réel d'un magasin de pièces mécaniques. Dans ce programme je peux ajouter des pièces, en rechercher pour les modifier ou en enlever.

les points qui me bloquent sont: une fois la modification possible, je n'arrive pas à trouver la formule Excel me permettant de modifier la ligne enregistrée dans le magasin. Aussi je n'arrive pas trouver la formule qui me permettrais aussi d'enlever des pièces du stock existant.

J'espère m'être bien fait comprendre.

Si quelqu'un peut me venir en aide, ca serait cool.

je vous joint des impression écrans et le fichier en question.

Merci pour vos retour.

27abc-pieces.xlsm (152.44 Ko)
17exemple.docm (142.91 Ko)

Bonjour Santo et bienvenue sur le Forum!

je vous joint des impression écrans et le fichier en question.

Sauf erreur de ma part, il n'y a aucune pièce jointe à ton message !

On en aurait besoin pour t'aider!

oups la PJ.

J'envoi

désolé

Please

Help me

Toujours pas de PJ :p

Utilise bien le bouton "Ajouter des fichiers" lors de la saisie de ton message :

capture

Et attend que le statut soit sur validé pour ensuite envoyer ton message :

capture2

A dispo!

Toujours pas de PJ :p

Utilise bien le bouton "Ajouter des fichiers" lors de la saisie de ton message :

Capture.PNG

Et attend que le statut soit sur validé pour ensuite envoyer ton message :

Capture2.PNG

A dispo!

Je renvoi avec PJ avec statut ok

5abc-pieces.xlsm (152.44 Ko)
4exemple.docm (142.91 Ko)

Waaaaag gg!

Il y a bien les pièces jointes cette fois xDDD

Je regarde et je reviens vers toi!

Re-

Alors pour ton problème de modification de stock :

une fois la modification possible, je n'arrive pas à trouver la formule Excel me permettant de modifier la ligne enregistrée dans le magasin.

Alors c'est pas par formule mais par VBA que sa se solutionne :p

Voilà le code qui te permet d'enregistrer une modification :

Sub Modif()
Dim c As Range
Set c = Sheets("MAGASIN").Columns(1).Find(Range("Y10"), LookAt:=xlWhole)
If c Is Nothing Then
    MsgBox "La référence à la pièce n'a pas été trouvé dans la Feuille Magasin'!" & Chr(10) & Chr(10) & "Les modifications ne sont pas prisent en compte", vbCritical
    Exit Sub
End If
Sheets("MAGASIN").Cells(c.Row, 2) = [Y13]
Sheets("MAGASIN").Cells(c.Row, 3) = [Y16]
Sheets("MAGASIN").Cells(c.Row, 4) = [Y19]
Sheets("MAGASIN").Cells(c.Row, 5) = [Y22]
Sheets("MAGASIN").Cells(c.Row, 6) = [Y25]
Sheets("MAGASIN").Cells(c.Row, 7) = [Y28]
Sheets("MAGASIN").Cells(c.Row, 8) = [Y31]
MsgBox "Les modifications apportées ont été correctement enregitrés", vbInformation
End Sub

En gros avec ce code on recherche la ligne correspondant à la référence en Y10 et avec ce numéro de ligne, on peut faire ce que l'on veut!

Pour ton second problème :

Aussi je n'arrive pas trouver la formule qui me permettrais aussi d'enlever des pièces du stock existant.

Par enlever tu veux dire supprimer toute la ligne ou modifier le stock ?

Si c'est modifier le stock alors tu peux te servir tout simplement du premier code :p

Re-

Alors pour ton problème de modification de stock :

une fois la modification possible, je n'arrive pas à trouver la formule Excel me permettant de modifier la ligne enregistrée dans le magasin.

Alors c'est pas par formule mais par VBA que sa se solutionne :p

Voilà le code qui te permet d'enregistrer une modification :

Sub Modif()
Dim c As Range
Set c = Sheets("MAGASIN").Columns(1).Find(Range("Y10"), LookAt:=xlWhole)
If c Is Nothing Then
    MsgBox "La référence à la pièce n'a pas été trouvé dans la Feuille Magasin'!" & Chr(10) & Chr(10) & "Les modifications ne sont pas prisent en compte", vbCritical
    Exit Sub
End If
Sheets("MAGASIN").Cells(c.Row, 2) = [Y13]
Sheets("MAGASIN").Cells(c.Row, 3) = [Y16]
Sheets("MAGASIN").Cells(c.Row, 4) = [Y19]
Sheets("MAGASIN").Cells(c.Row, 5) = [Y22]
Sheets("MAGASIN").Cells(c.Row, 6) = [Y25]
Sheets("MAGASIN").Cells(c.Row, 7) = [Y28]
Sheets("MAGASIN").Cells(c.Row, 8) = [Y31]
MsgBox "Les modifications apportées ont été correctement enregitrés", vbInformation
End Sub

En gros avec ce code on recherche la ligne correspondant à la référence en Y10 et avec ce numéro de ligne, on peut faire ce que l'on veut!

Pour ton second problème :

Aussi je n'arrive pas trouver la formule qui me permettrais aussi d'enlever des pièces du stock existant.

Par enlever tu veux dire supprimer toute la ligne ou modifier le stock ?

Si c'est modifier le stock alors tu peux te servir tout simplement du premier code :p

Super, pour le premier problème c'est bon, ça marche !!!!

pour le second problème je voudrais modifier une pièce avec une traçabilité d'enlèvement.

Re-

Bon j'ai toujours pas compris ton second problème x)

Et j'ai modifié ta feuille "ENLEVER-MODIFIER UNE PIECE"

Entre la Liste qui affiche des vides et les 3 tableaux pour chacune des actions, c'est un dawa à l'interieur xD

A toi de voir si tu veux garder cette version de la feuille

15pour-santo.xlsm (144.90 Ko)

Re-

Bon j'ai toujours pas compris ton second problème x)

Et j'ai modifié ta feuille "ENLEVER-MODIFIER UNE PIECE"

Entre la Liste qui affiche des vides et les 3 tableaux pour chacune des actions, c'est un dawa à l'interieur xD

A toi de voir si tu veux garder cette version de la feuille

En fait, je souhaiterais simplement enlever une quantité de pièces d'un stock déjà existant dans le magasin et de tracer l'enlèvement sur une autre feuille excel (exemple: pneu qté 3, pneu qté 1 après enlèvement de 2. les 2 pneus enlevé du stock seront tracé sur un autre onglet appelée archive pièces sorties ).

désolé si je m'exprime mal

Rechercher des sujets similaires à "programme formules macros"