Creer un code produit quand creation de produit - Userform

  • Initiateur de la discussion Initiateur de la discussion alex53
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

alex53

Guest
Bonjour,
Je suis en train de creer un USF qui me permet de rentrer les caracteristiques des nouveaux produits.
Je souhaite definir un code pour chacun de ses nouveaux produits en fonction de ses caracteristiques.

Je n'arrive pas a creer ce code automatiquement (je suis oblige de le faire manuellement, or toutes les informations pour creer le code sont deja dans excel)

Je joins un petit fichier simplifie ou tout est explique avec un exemple simple.

Merci pour votre aide
 

Pièces jointes

Re : Creer un code produit quand creation de produit - Userform

Bonjour,

Voir une solution possible dans le fichier joint.
Ce qui a changé:
Sur feuille Info -> une colonne a été ajoutée qui contiendra le dernier numéro d'ordre créé par type de produit
La plage de celllules A2:C4 a été nommée: "Types"

Sur le userform.
comboboxTypeProduit est alimentée à partir de cette plage nommée et contient donc 3 colonnes dont la première et la dernière sont masquée (ColumnWidth=0;;0)

Voir pour le reste qui est largement commenté.

A+
 
Re : Creer un code produit quand creation de produit - Userform

Bonjour Alex, Hasco, bonjour le forum,

Une autre proposition sans colonne Ajoutée. J'ai un peu modifié tes codes. Le code pour le code :
Code:
Private Sub CommandButton3_Click() 'bouton "Créer un code"
Dim cod As String 'déclare la variable cod (CODe)
Dim v As Long 'déclare la variable v (Valeur)
Dim vm As Long 'déclare la variable vm (Valeur Maximale)
Dim x As Long 'déclare la variable x (incrément)

For x = 2 To dl 'boucle sur toutesles cellules éditée de la colonne C, lignes 2 à dl
    v = CLng(Right(Sheets("Produits").Cells(x, 3).Value, 4)) 'définit la valeur (les 4 derniers caractères convertis en entier long)
    If v > vm Then vm = v 'si la valeur est supérieure a la valeur maximale alors la valeur maximale devient la valeur
Next x 'prochaine cellule de la boucle
cod = "1AA" & Format(CStr((Me.ComboBoxTypeProduit.ListIndex + 1) * 50), "000") & "9-" & Format(vm + 1, "0000") 'définit le code
Me.TextBoxcode = cod 'place le code dans la textbox
End Sub
Le fichier :
 

Pièces jointes

Re : Creer un code produit quand creation de produit - Userform

Bonjour,et Merci pour vos reponses.

Je pensais dans un premier temps que la reponse de Robert resolvait completement mon probleme, mais je viens de me rendre compte qu il reste un souci que je n arrive pas a resoudre:

Avec la solution de Robert, les codes vont de 50 en 50. (Soit 050, 100, 150, 200.....) Le probleme est que mes codes ne sont pas aussi lineaires (050, 100, 150, 250, 380, 480).

Tout le reste du code cree est bon, il y a juste ce detail qui me gene.

Peut etre que Robert a la solution..

Merci pour votre aide.

Ci joint le fichier avec les explications
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Problème Code VBA
Réponses
9
Affichages
561
E
Réponses
3
Affichages
794
ExcelBeginner
E
S
Réponses
2
Affichages
2 K
Smookie
S
Retour