Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Gestion stock

Samybot

XLDnaute Nouveau
Bonjour à vous tous,

Nouveau, je me retourne vers vous pour traiter une demande de gestion de stock.
Vous trouverez en PJ, l'ébauche de ce projet.
Dans un premier temps je souhaiterai pouvoir rentrer mon stock de départ sur la feuille "Matériels" à partir de "entrée stock initial".
Cette commande une fois programmée ouvre la boite de dialogue "Stock" dans le dossier feuille du VBA.
Je souhaiterai pouvoir rentrer mes stocks à partir de cette boite grâce au bouton "valider". A la validation de la donnée, cela insére automatiquement une ligne Excel sous la numéro 3 de la feuille "matériels". La ligne 4 deviens donc N°5 et ainsi de suite à chaque saisie d'ajout de matériel.

Merci par avance pour cette aide.
 

Pièces jointes

  • Copie de gestion-de-stock.xlsm
    43.2 KB · Affichages: 81

vgendron

XLDnaute Barbatruc
Hello

un début de réponse pour ton formulaire de saisie

PS: j'ai renommé les controles avec des noms plus pratique à utiliser dans le code
 

Pièces jointes

  • Copie de gestion-de-stock.xlsm
    40.9 KB · Affichages: 70

Samybot

XLDnaute Nouveau
Non désolé, même avec clic droit sur "entrée stock initial", je n'ai pas associer macro qui s'affiche mais l'option affecter une macro a laquelle il m'est impossible d'ajouter stock initial comme mentionné sur ta réponse.
 

Samybot

XLDnaute Nouveau
vgendron,

Tout a fait dans l'esprit de ce que je recherche pour ce début de projet. Mais quelques soucis, a savoir:
quand je valide une saisie voici ce qu'il se passe en 2 screens




Est-il possible de programmer le bouton annuler pour faire un RAZ de la saisie en cours lorsque la boite de dialogue est ouverte ?
Ensuite, je pense que je vais rajouter une colonne a renseigner, ce qui signifie que je vais devoir également modifier ma boite de dialogue ! Est-ce trop tard ?
 

vgendron

XLDnaute Barbatruc
à tout hasard.. n'aurais tu pas fait un copier coller du code dans TON fichier
dans ce cas.. vérifie le nom de ton onglet. Marériels au lieu de Matériels

sinon, je vois pas pourquoi ca planterait. chez moi, ca fonctionne bien (je viens de vérifier le dernier fichier posté)

pour le bouton Annnuler
VB:
Private Sub CBAnnuler_Click()
Unload Me
End Sub

il est toujours possible de modifier, ajouter ou supprimer, mais le mieux, (si tu as déjà les idées claires sur ton besoin final bien sur), c'est de donner toutes les conditions dès le début
Bref, il n'est jamais trop tard. ;-)
 

vgendron

XLDnaute Barbatruc
Nouvelle PJ avec un début de proposition pour la modif..

à l'ouverture du formulaire, seul le combo Domaine est prérempli
à la sélection d'un domaine, les data correspondantes sont chargées
elles peuvent etre modifiées et enregistrées (bouton valider) dans la feuille Matériels
 

Pièces jointes

  • gestion-de-stock2.xlsm
    45.3 KB · Affichages: 53

Samybot

XLDnaute Nouveau
Stop vgendron car je n'arrive pas à corriger cette première erreur de "Private Sub CBValider_Click()"
J'ai pourtant vérifié mais je ne trouve pas !
Je me tate pour tout refaire à zéro avant de continuer ?...
Sinon j'ai rajouté une colone "Code" en seconde position, ce qu'il nous fait 5 renseignements a rentrer dans la boite de dialoge que j'ai également modifié.
Voici la correction que j'ai apporté à ton code, dis moi si c'est juste stp, merci
Code:
Private Sub CBValider_Click()

With Sheets("Matériels")
    .Rows("5:5").Insert
    fin = 5
    'fin = .Range("A" & .Rows.Count).End(xlUp).Row + 1  'au cas ou il faut ajouter les data en fin de tableau
    .Range("A" & fin) = TBDomaine
    .Range("B" & fin) = TBCode
    .Range("C" & fin) = TBClairAbrege
    .Range("D" & fin) = TBSGL
    .Range("E" & fin) = TBQte
End With
TBDomaine = ""
TBCode = ""
TBClairAbrege = ""
TBSGL = ""
TBQte = ""

End Sub
 

grisan29

XLDnaute Accro
bonsoir samybot, vgendron
samybot tu as mis une ligne de trop dans ton code et les écrits ne se mettent pas dans les bonnes cellules le TBcode n'existe pas
vgendron ton code fonctionne bien mais ajoute la ligne au début en repoussant les autres
 

Samybot

XLDnaute Nouveau
vgendron, grisan29,

J'ai refais le classeur dans son intégrale ce qui a permis de corriger l'erreur "Private Sub CBValider_Click()" que je trainais depuis le début. Comme précisé au-dessus, j'ai rajouté une colonne sans réussir à modifier ton code pour que cette colonne soit renseignée à la saisie sur la boite de dialogue. Je suis débutant et toujours preneur de quelques cours à l'occasion.
Par contre est-il possible que les boites de dialogue se ferme automatiquement à la validation d'un des 2 boutons ?
Correction du code à apporter aussi sur la boite de modifications en sachant (si possible):
  1. Que le bouton "modifier" modifie la ligne sélectionnée.
  2. Que le bouton "supprimer" supprime la ligne sélectionnée.
Pour cela, je reposte le nouveau classeur Excel en ayant pris soin de tout recopier.
Par contre, pour répondre à grisan29, je suppose que tu as regardé la première version. Dorénavant c'est avec celle de ce poste qu'il faut travailler.
Merci à vous 2
 

Pièces jointes

  • Gestion_StockV1.xlsm
    23.6 KB · Affichages: 57

vgendron

XLDnaute Barbatruc
Hello

Lorsque tu ajoutes un Textbox sur ton formulaire, automatiquement, VBA lui donne un nom en Textbox1 2 3...
comme je te le disais au début, ces noms sont peu pratiques car dans le code, on ne sait jamais trop de quoi il s'agit. surtout quand il y en a plusieurs..
c'est pour cela que je les renomme: TBDomaine pour TextBoxDomaine....
toi, tu as ajouté un textbox pour le Code, mais tu lui as laissé son nom par défaut: Textbox1 (idem pour le Combo dans l'autre formulaire)
donc, dans ton code, lorsque tu utilises TBCode,.. forcément. VBA ne sait pas de quoi il s'agit
pour changer le nom
double clic dans l'explorateur à gauche, sur le formulaire "Stock" pour l'afficher à droite
selectionne le textbox et à gauche dans les propriétés (menu Affichage, F4 si ca n'apparait pas), dans la section Name, tu changes le nom TBCode

boites de dialogue se ferme automatiquement
suffit d'ajouter Unload Me à la fin du code de chaque bouton

Pour le reste. je regarde
 

Samybot

XLDnaute Nouveau
OK vgendron, c'est bien lu ce petit cours et correctement mis en place dans le code. Ma colonne "Code" se renseigne à la saisie et ma boite de dialogue se ferme quand je valide. Ca progresse et j'apprends, cool !
Mais d'autres petites choses apparaissent à l'éliminations de certaines...
Quand je valide dans le vide cela insère une ligne vide dans le tableau, cette condition peut-elle être évitée ?
 

vgendron

XLDnaute Barbatruc
Voir PJ

J'ai remis un bouton annuler sur le formulaire de modif, histoire de pouvoir le fermer sans passer par la croix..

la ligne qui sera supprimée est celle qui sera sélectionnée, renseignée dans le formulaire
 

Pièces jointes

  • Gestion_StockV1.xlsm
    24.8 KB · Affichages: 107
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…