Générer un nom de codification simple en VBA
Fermé
man.delage
Messages postés
5
Date d'inscription
dimanche 2 février 2020
Statut
Membre
Dernière intervention
4 février 2020
-
Modifié le 2 févr. 2020 à 21:41
man.delage Messages postés 5 Date d'inscription dimanche 2 février 2020 Statut Membre Dernière intervention 4 février 2020 - 4 févr. 2020 à 17:31
man.delage Messages postés 5 Date d'inscription dimanche 2 février 2020 Statut Membre Dernière intervention 4 février 2020 - 4 févr. 2020 à 17:31
A voir également:
- Générer un nom de codification simple en VBA
- Trouver une adresse avec un nom de famille gratuit ✓ - Forum Mobile
- Ouvrez ce fichier avec un éditeur de texte simple (bloc-notes, textedit, gedit, etc.) pour y découvrir le nom d’un objet. ✓ - Forum Études / Formation High-Tech
- Nom de l'adresse ✓ - Forum Réseaux sociaux
- &Quot;Nom de l'adresse" lors d'une inscription sur une site - Forum Consommation & Internet
- Annuaire portable gratuit a partir d'un nom - Forum Réseaux sociaux
3 réponses
[Dal]
Messages postés
6174
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
2 février 2024
1 083
4 févr. 2020 à 14:50
4 févr. 2020 à 14:50
Salut man.delage,
Voilà un exemple de ce qui peut être fait, en limitant l'exemple à 3 ComboBox pour rester lisible :
Le classeur correspondant est là : https://www.cjoint.com/c/JBenQbTZqKZ
En gros :
Dal
Voilà un exemple de ce qui peut être fait, en limitant l'exemple à 3 ComboBox pour rester lisible :
Option Explicit Dim stCodeMarker As String Dim C1, C2, C3 As String Private Sub ReinitAll() stCodeMarker = "-- code : " ComboBox1.Clear With Feuil1.ComboBox1 .AddItem "marque2 -- code : 002" .AddItem "marque3 -- code : 003" .AddItem "marque4 -- code : 004" End With ComboBox1.Value = "" C1 = "" ComboBox1.Visible = True ComboBox2.Clear With Feuil1.ComboBox2 .AddItem "modele12 -- code : 012" .AddItem "modele13 -- code : 013" .AddItem "modele14 -- code : 014" End With ComboBox2.Value = "" C2 = "" ComboBox2.Visible = False ComboBox3.Clear With Feuil1.ComboBox3 .AddItem "mot -- code : MOT" .AddItem "cap -- code : CAP" .AddItem "top -- code : TOP" End With ComboBox3.Value = "" C3 = "" ComboBox3.Visible = False Range("C14").Value = "[choisir la marque]" End Sub Private Sub Workbook_Open() ReinitAll End Sub Private Function GetCode(ByVal st As String) Dim posCode As Integer posCode = InStr(st, stCodeMarker) GetCode = Mid(st, posCode + Len(stCodeMarker)) End Function Private Sub ComboBox1_Change() If ComboBox1.Value <> "" Then C1 = GetCode(ComboBox1.Value) ComboBox1.Visible = False ComboBox2.Visible = True Range("C14").Value = "[choisir le modèle]" Else C1 = "" End If End Sub Private Sub ComboBox2_Change() If ComboBox2.Value <> "" Then C2 = GetCode(ComboBox2.Value) ComboBox2.Visible = False ComboBox3.Visible = True Range("C14").Value = "[choisir le mot]" Else C2 = "" End If End Sub Private Sub ComboBox3_Change() If ComboBox3.Value <> "" Then C3 = GetCode(ComboBox3.Value) ComboBox3.Visible = False Range("C14").Value = C1 + "-" + C2 + "-" + C3 Else C2 = "" End If End Sub
Le classeur correspondant est là : https://www.cjoint.com/c/JBenQbTZqKZ
En gros :
- 3 ComboBox sont définies
- elles sont initialisées avec le contenu textuel et le code, seule la 1ère est affichée et la rubrique "Codification" demande à ce que la marque soit choisie
- lorsque la marque est choisie le code est extrait, la 1ère est masquée, la 2ème rendue visible et la rubrique "Codification" demande à ce que le modèle soit choisi
- lorsque le modèle est choisi le code est extrait, la 2ème est masquée, la 3ème rendue visible et la rubrique "Codification" demande à ce que le "mot" soit choisi
- lorsque le "mot" est choisi le code est extrait, la 3ème est masquée (toutes les ComboxBox sont alors masquées) et la rubrique "Codification" comporte la concaténation des codes correspondants aux 3 choix effectués
Dal
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
2 févr. 2020 à 23:09
2 févr. 2020 à 23:09
bonjour, je ne comprends pas ce que tu souhaites obtenir, pourrais-tu être plus factuel?
plusieurs éléments sont particulièrement peu clairs:
1) à quoi va servir la codification ainsi générée?
2) comment déterminer ce qui correspond à quoi
3) ce que tu essaies d'obtenir semble être une suite, bizarre, non?
joindre un fichier, c'est simple: tu publies le fichier sur internet (cjoint.com, google drive, ...), puis tu partages ici le lien vers le fichier.
plusieurs éléments sont particulièrement peu clairs:
1) à quoi va servir la codification ainsi générée?
2) comment déterminer ce qui correspond à quoi
3) ce que tu essaies d'obtenir semble être une suite, bizarre, non?
joindre un fichier, c'est simple: tu publies le fichier sur internet (cjoint.com, google drive, ...), puis tu partages ici le lien vers le fichier.
man.delage
Messages postés
5
Date d'inscription
dimanche 2 février 2020
Statut
Membre
Dernière intervention
4 février 2020
3 févr. 2020 à 08:11
3 févr. 2020 à 08:11
Bonjour, et merci pour votre intérêt !
1: c'est une codif interne simplifiée, permettant d'avoir un langage commun,sans fautes d'orthographe, fantaisie dans le noms etc.
2: déterminer. C'est un exemple mais un vlookup (nom cherché, lieu de recherche, 2, false)suffirait si on se base sur un tableau classe/é dans un ordre prédéterminé.
3: oui la suite est bizarre....mais c'est un langage que je pratique depuis 25 ans????
Je ne sais pas comment mettre un exemple dans cette conversation....
1: c'est une codif interne simplifiée, permettant d'avoir un langage commun,sans fautes d'orthographe, fantaisie dans le noms etc.
2: déterminer. C'est un exemple mais un vlookup (nom cherché, lieu de recherche, 2, false)suffirait si on se base sur un tableau classe/é dans un ordre prédéterminé.
3: oui la suite est bizarre....mais c'est un langage que je pratique depuis 25 ans????
Je ne sais pas comment mettre un exemple dans cette conversation....
[Dal]
Messages postés
6174
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
2 février 2024
1 083
4 févr. 2020 à 13:38
4 févr. 2020 à 13:38
il n'est probablement pas indispensable que les ComboBoxes ne s'affichent qu'au fur et mesure... cela pourrait rendre difficile la correction d'une erreur sur un ComboBox précédente.
man.delage
Messages postés
5
Date d'inscription
dimanche 2 février 2020
Statut
Membre
Dernière intervention
4 février 2020
>
[Dal]
Messages postés
6174
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
2 février 2024
4 févr. 2020 à 13:41
4 févr. 2020 à 13:41
Merci, effectivement j'ai réussi à créer qq chose de ressemblant a mon attendu mais le risque d'erreur est élevé.
J'y travaille ????
J'y travaille ????
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
4 févr. 2020 à 17:06
4 févr. 2020 à 17:06
joindre un fichier, c'est simple: tu publies le fichier sur internet (cjoint.com, google drive, ...), puis tu partages ici le lien vers le fichier.
man.delage
Messages postés
5
Date d'inscription
dimanche 2 février 2020
Statut
Membre
Dernière intervention
4 février 2020
>
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
4 févr. 2020 à 17:31
4 févr. 2020 à 17:31
Merci.
J'ai réussi à avoir le résultat que j'attend en quelques lignes...il fallait juste que je comprenne que l'initialisation de faisait dans le userform....ha ben oui je débute !
Merci pour votre aide en tout cas.
Emmanuel
J'ai réussi à avoir le résultat que j'attend en quelques lignes...il fallait juste que je comprenne que l'initialisation de faisait dans le userform....ha ben oui je débute !
Merci pour votre aide en tout cas.
Emmanuel
4 févr. 2020 à 14:58
Modifié le 4 févr. 2020 à 15:05
En fin de sélection on a alors :
Les ComboBox de sélection étant masquées, mais pas les résultats intermédiaires sélectionnés.