besoin d'aide pour modifier code vba et userform

moutchec

XLDnaute Occasionnel
Bonjour à tous,

Dans le fichier en annexe, j'aimerais qu'au moment de la création du lot via le deuxième onglet de l'userform , deux menus déroulants soient proposés pour entrer deux emplacements et deux cases pour entrer la quantité correspondant à chaque emplacement, au moins un emplacement et une quantité supérieure à zéro doivent être renseignés pour pouvoir valider l'entrée en magasin.
Si un seul emplacement et sa quantité sont renseignés alors une seule ligne est ajoutée dans la feuille STOCK et une ligne dans la feuille MOUVEMENT. Si deux emplacements sont renseignés et des quantités supérieures à zéro pour chaque emplacement alors deux lignes sont créés dans la feuille STOCK et deux lignes dans le feuille MOUVEMENT.

A la sortie ou à l'apport de quantité via le premier onglet de l'userform , si deux emplacements existent , ils doivent être proposés tous les deux avec possibilité de sortie ou d'apport d'un seul emplacement en renseignant la quantité zéro au second emplacement ou possibilité d'apport ou de sortie dans les deux emplacements à la fois .
En cas de choix de sortie ou d'apport d'un seul emplacement, zéro est renseigné dans la quantité à mouvementer du second emplacement et dans ce cas aucune modification ne doit être faite dans la ligne du lot correspondant à cet emplacement dans la feuille STOCK et aucun historique ne doit être ajouté dans la feuille MOUVEMENT.
La ligne du lot dont la quantité descend à zéro est supprimée de la feuille STOCK.
Si un seul emplacement existe alors la place pour le deuxième emplacement devient gris et pas modifiable.
.
J'espère avoir été clair dans mes explications.
Merci de m'aider s'il vous plaît.
 

Pièces jointes

  • Copie de GESTION STOCK new.xlsm
    106.6 KB · Affichages: 75

ChTi160

XLDnaute Barbatruc
Bonjour Moutchec
Bonjour le Fil ,Le Forum
je suppose que ces deux Listes d'emplacements sont issues d’un Magasin qui doit être défini avant .

Donc on sélectionne un magasin et ensuite les emplacements dans ce magasin , à moins que les emplacements puissent être dans deux magasins différents ?????

Essais de mettre un exemple de ce que tu as et de ce que tu veux ?

Dans l’attente
Amicalement

Jean marie
 

moutchec

XLDnaute Occasionnel
Bonjour ,
voici en annexe dans une feuille excel l'exemple de ce que je souhaites avoir pour le deuxième onglet de l'userform servant à créer un nouveau lot par rapport à ce qui est sur le fichier annexé au post 1.
merci.
 

Pièces jointes

  • exemple.xlsx
    27.6 KB · Affichages: 72
Dernière édition:

moutchec

XLDnaute Occasionnel
Évidemment le premier onglet de l'Userform concernant les sorties ou apports de quantités devra aussi afficher les deux emplacements (si le lot se trouve à deux places ) et leurs quantités respectives avec possibilité de mouvementer un seul emplacement ou les deux.
 

ChTi160

XLDnaute Barbatruc
Bonjour moutchec
Bonjour le fil ,Le Forum
pas sur d'avoir tout compris ! on verra par la suite Lol
une interprétation qui ne répond pas à toutes les fonctionnalités demandées .
Avant d'aller plus loin , est ce dans l'esprit de ce que tu veux faire ?
Bonne journée
Amicalement
Jean marie
 

Pièces jointes

  • GESTION STOCK new-Chti160-1.3.xlsm
    116.7 KB · Affichages: 66

moutchec

XLDnaute Occasionnel
Bonjour Jean Marie,
Dans l'idée, c'est bien ce que je cherche. l'interface de l'userform est encore bien meilleur que ce que j'espérais. un grand merci déjà pour le temps que vous y consacrez.
bonne journée à vous.
Moutchec.
 

ChTi160

XLDnaute Barbatruc
Re
Ok donc je poursuis .
Je pense que le fait d avoir acces a deux magasins doit permettre de fractionner un lot , l approvisionnement depuis deux magasins d une commande, l approvisionnement de l un par l autre.
Dis moi si j ai bien compris.
Et eclaire moi si besoin.
Bonne fin de journee
Amicalement
Jean marie
 

moutchec

XLDnaute Occasionnel
je crois que vous avez compris.
juste deux remarques :
1/ le lot peut en effet être fractionné sur deux magasins ou un seul magasin. exemple un lot produit à 45000kg doit pouvoir être en SAR01A : 20000kg et SAR01B : 25000kg.
ce même lot peut également être stocké en SAR01A : 20000kg et le reste dans un autre magasin SCR01 : 25000kg.
donc c'est soit deux emplacements d'un seul magasin, soit deux emplacements dans deux magasins différents.
2/ l'idée de l'approvisionnement d'un magasin par l'autre peut en effet arriver. exemple du magasin "E" à l'extérieur. nous y transférons tout ou partie de lots pour faire de la place sur le site.
il serait donc intéressant de prévoir un onglet transfert pour déplacer sans sortir du stock une partie de la quantité d'un emplacement pour un lot qui n'est stocké qu'à un seul emplacement ou déplacer en totalité la quantité d'un emplacement vers un autre pour un lot qui est déjà stocké dans deux emplacements différents.
dans tous les cas, un verrou doit être mis pour empêcher qu'un lot se retrouve à plus de deux emplacements car cela pourra être source d'erreur.
merci.
 

ChTi160

XLDnaute Barbatruc
Bonjour moutchec
Bonjour le Fil , Le Forum
j'avance , mais lentement lol ne désespère pas ! Lol
j'ai beaucoup d'autres choses à faire (Mes deux petites filles , le Bricolage etc etc Lol)
Mais en étudiant , le transfert des données dans les différentes feuilles (Stocks ,Mouvements) du Classeur ,
je me suis demandé , à quoi correspond la rubrique Code Magasin ?
on a en Colonnes E et F
CODE MAGASIN - MAGASIN
On a en feuille Déroulants , Colonne C , le Nom des Magasins , mais où trouve t'on le Code Magasin .
merci par avance
Amicalement
Jean marie
 

moutchec

XLDnaute Occasionnel
bonjour et merci d'avance pour vos efforts.
le code magasin sert par exemple à cet endroit du code:

If Left(Me.LbCodeMagasin.Caption, 1) = "S" Then
.Cells(LigneDestinationMouvement, 6) = "Site - hall " & Right(Left(Me.LbCodeMagasin.Caption, 2), 1)
If Right(Left(Me.LbCodeMagasin.Caption, 2), 1) = "A" Then
If Right(Left(Me.LbCodeMagasin.Caption, 3), 1) = "R" Then
.Cells(LigneDestinationMouvement, 7) = "Rack " & Right(Left(Me.LbCodeMagasin.Caption, 5), 2) & " - " & Right(Me.LbCodeMagasin.Caption, 1)
ElseIf Right(Left(Me.LbCodeMagasin.Caption, 3), 1) = "S" Then
.Cells(LigneDestinationMouvement, 7) = "Sol " & Right(Me.LbCodeMagasin.Caption, 2)
End If

exemple d'interpretation du code magasin : SAR01A
S = magasin sur le SITE
A = Hall A
R = RACK ou S = SOL
01 = premier rack
A = niveau A
dans le Hall A uniquement chaque rack comporte 3 niveaux (ABC) et chaque place peut accueillir un lot.

nous avons plusieurs Halls (A B C D), des places de stockage au sol ou en rack. chaque emplacement ne peut contenir qu'un lot.
il arrive que les magasins du site soient pleins, dans ce cas nous déstockons vers l'extérieur : magasin E
interpretation code magasin E
E = extérieur
C = le loueur
M ou R première lettre du nom de ville ou le magasin est localisé.

j'espère avoir été clair dans mes explications.
encore merci.
 

ChTi160

XLDnaute Barbatruc
Re
je m’aperçois que j'ai mal interprété ton appellation !
le Terme"Code magasin" correspond à un emplacement dans le Magasin considéré , mais pas une donnée nouvelle qualifiant le magasin .
donc , merci je viens d'apprendre la signification de ces "Codes Emplacement"
je te poste mon fichier des que possible .
Bonne fin de journée
Amicalement
Jean marie
 

ChTi160

XLDnaute Barbatruc
Bonjour moutchec
Bonjour le Fil,Le Forum

En pièce jointe les avancées du Fichier .
Rien n'est fonctionnel , mais les choses avances lol
Bonne Journée
Amicalement
Jean marie
Ps : Je pars Bricoler lol
 

Pièces jointes

  • GESTION STOCK new-Chti160-1.5.2.xlsm
    166.7 KB · Affichages: 65

moutchec

XLDnaute Occasionnel
bonjour, le fichier avance bien en effet. merci.
pour les transferts, il n' y a pas besoin d'une feuille. il faudrait juste un onglet dans l'userform pour retrancher à un emplacement de départ et ajouter à un emplacement d'arrivée. la modif devant se faire sur la feuille stock juste au niveau de l'emplacement et sur la feuille mouvement une ligne d'historique ou deux si les deux emplacements du lot sont transférées .
encore merci
Et bonne journée.
 

Statistiques des forums

Discussions
311 716
Messages
2 081 848
Membres
101 826
dernier inscrit
dododu89