Combobox à plusieurs variables

Salut !

pour les besoins de mon boulot j'ai besoin de créer un fichier Excel regroupant et permettant de configurer toutes sortes de tiroirs suivant ce que le fournisseur propose.

Pour ce faire, j'ai regardé une vidéo sur internet que j'ai essayé d'adapter à ma situation. Mais évidemment, ça marche pas !!!!

Lorsque que je clique sur la CommandButton auquel est lié le petit code VBA, je me suis rendu compte que les valeurs ne provenait pas du bonne endroit.

Exemple : Pour une configuration type : Antarro / N / Blumotion / les profondeurs proposées devrait débuter à 400 et non 270 ... En plus je me suis rendu compte que dans cette configuration le "Blumotion" affiché n'est pas celui se trouvant dans la bonne case ... C'est le Bord*** quoi ... :/

Du coup si une âme charitable acceptais de se pencher sur mon problème, je lui en serai très reconnaissant !

Pour info, j'ai opté pour cette solution parce qu'elle me semble permettre la modification des valeurs rapidement ( par exemple si le fournisseur arrête, change ou rajoute un module, je peux facilement intervenir). Mais si il existe une autre solution, je suis preneur.

Je ne peux pas transmettre de lien donc la vidéo se trouve sur la chaine youtube de ArtemVBA et se nomme : Synchronisation de Combobox en VBA Excel.

Merci d'avance pour votre aide !

Bonjour,

En fait votre fichier est hyper compliqué à mettre en place avec vos combobox. On s'y perd facilement (enfin je trouve...)
J'aurais plutôt vu cela autrement en faisant une base de données sur une seule feuille mais cela oblige à tout refaire en quelque sorte

A voir si intérêt

Cordialement

Bonjour,

Merci de vous pencher sur mon problème.

Je suis absolument d'accord sur le fait que l'on s'y perd facilement ! Et par ailleurs, si la meilleure solution est de recommencer à zéro cela n'est pas un problème.

Par contre je suis absolument pas un crack en Excel, donc quand vous dite de faire une base de donnée sur une feuille cela veut-il dire que je devrais inscrire tous les modèles, hauteurs, types, profondeurs et poids dans un tableau unique sur une feuille ? dans ce cas une mise en page est-elle à respecter ? et ensuite, comment obtenir le résultat voulu ?

Cordialement

Par contre je suis absolument pas un crack en Excel, donc quand vous dite de faire une base de donnée sur une feuille cela veut-il dire que je devrais inscrire tous les modèles, hauteurs, types, profondeurs et poids dans un tableau unique sur une feuille ?

Oui. Je peux vous faire une vue afin que vous compreniez plus mais j'ai besoin de quelques infos
Si je prends le cas de Antarro / N / Blumotion / 400 à 550 (colonne F2-F6) --> Quel est le poids associé ? là je vois bien 30 Kg. Est-ce le même poids pour chaque valeur
SI je prends le cas de Antarro / N / Tip-On / 400 à 550 (colonne F8-F12) --> Quel est le poids associé ? 30 kg et 50 kg pour chaque longueur ?

comment obtenir le résultat voulu ?

C'est le code qui ira chercher les valeurs pour les mettre dans les combobox. Chaque combobox sera remplie en fonction de la valeur de la combobox précédente

Crdlt

Bonjour,

Je suis bien d'accord avec Dan. Vous devez d'abord revoir l'organisation de vos tables. Avec votre schéma actuel, on a bien du mal à en comprendre les dépendances.

ci-joint un schéma possible dans la feuille Data2, d'organisation de vos tables dans d'après ce que j'en ai compris. Veuillez clarifier les dépendances avec le type et le poids.

Dan :

Pour le cas de Antarro / N /Blumotion / 400 à 550 le poids associé est -> Y3:Y12 soit :

400 : 30kg

450 : 30kg /50kg

500 : 30kg /50kg

550 : 30kg /50kg

Pour le cas de Antarro / N /Tip -On / 400 à 550 le poids associé est -> Y14:Y20 soit :

400 : 30kg

450 : 50kg

500 : 50kg

550 : 50kg

Cordialement

thev :

Merci à vous aussi de prendre le temps de m'aider ! J'ai regardé votre tableau, effectivement c'est bien plus clair !!!!

Par contre je ne comprends pas pourquoi vous marquer "Type_ALM" puis vous définissez cette appellation comme "Blumotion,Tip-On" ? Pourquoi ne pas écrire directement ces deux derniers directement dans la colonne type ?

Cordialement

re

Sur base de vos infos, la solution à laquelle j'avais pensé est celle reprise dans cette vue.

image

A voir aussi le début de solution de Thev qui a arrangé vos tableaux pour que ce soit nettement plus lisible.

Cordialement

Merci pour votre image. Dans votre exemple, si j'ai bien compris, il y'a autant de ligne que de combinaison possible ?

Dans la feuille base de donnée, j'ai refais un tableau plus lisible. D'après vous quelle solution serait la plus "simple" ou du moins efficace pour la suite ?

Cordialement

9combobox-aide.xlsm (55.53 Ko)

Waouh, votre dernier fichier me parait encore plus complexe... Je ne vois pas comment vous allez utiliser le fichier comme cela pour alimenter l'USF

si j'ai bien compris, il y'a autant de ligne que de combinaison possible ?

Oui exact. A partir de là, on charge la combobox 1 sur base de la colonne A et selon le choix on charge la combobox2, et ainsi de suite

Si j'ai bien compris, c'est pour un choix de mobilier ?

Aha ok je laisse tomber le tableau alors :D. Je suis entrain de créer la base de donnée.

Du coup je comprend la démarche, je suis pas sur de savoir bien coder les combobox mais je vais m'instruire de ce côté.

Je travail dans l'ameublement, en bureau d'étude. A chaque fois qu'un dossier est prêt à passer à la fabrication, je dois remplir dans un fichier Excel le nombre, type, modèle, ... de tiroirs nécessaire pour que mon supérieur passe la commande.

Mais actuellement il faut à chaque fois que j'écrive manuellement chaque information. En plus comme vous avez pu le remarquer il existe énormément de combinaison possible, je les connais pas toutes par cœur. D'où l'intérêt d'avoir une liste qui ne propose que ce qui est possible d'après les infos renseignées précédemment.

Cordialement

Aha ok je laisse tomber le tableau alors :D. Je suis entrain de créer la base de donnée.

Voir aussi avec Thev qui peut être pensé à quelque chose.
Voyez pour un mieux.

Je travail dans l'ameublement, en bureau d'étude.

Chez Blum ? (a voir les références..)

Oui la gamme Blum, mais les références ne m'intéresse pas vraiment.

Du coup, j'ai bien m'a base de donnée (feuille Données), mais je vais encore avoir besoin d'un petit coup de pouce ... A vrai dire, malgré mes recherches, je ne sais pas vraiment par ou commencer pour le code. Une idée ?

Merci

*Rectification

Je ne travaille pas chez Blum, je travaille dans une entreprise d'ameublement qui se sert des produits Blum.

Je ne travaille pas chez Blum, je travaille dans une entreprise d'ameublement qui se sert des produits Blum

J'ai du matos Blum à la maison et d'ailleurs je cherche une glissière (coulisse) blum. Et là plus moyen de la trouver. Blum me dit qu'il ne suit plus l'article.

Du coup, j'ai bien m'a base de donnée (feuille Données), mais je vais encore avoir besoin d'un petit coup de pouce

Ok pour le fichier. Je vais regarder mais avant il faudrait des titres aux colonnes. Donnez les moi, je les ajouterai dans le fichier

Et on peut aussi mettre le tableau au format structuré (icone Mettre au format tableau)

Il produise plus l'article ?! Etonnant, j'ai pas souvenir qu'il y'est eu du changement dans les gammes Blum depuis au moins 2ans.

Pour éviter toutes erreur avec les précédentes versions, j'ai refait un fichier. Du coup j'ai mis les titres de colonnes et le format tableau.

Encore merci pour votre aide.

17config-tiroirs.xlsm (30.20 Ko)

Il produise plus l'article ?! Etonnant, j'ai pas souvenir qu'il y'est eu du changement dans les gammes Blum depuis au moins 2ans.

Non parce que l'article date de 30 ans ... Il doit certainement encore avoir un stock qui traine mais où....

Pour éviter toutes erreur avec les précédentes versions, j'ai refait un fichier. Du coup j'ai mis les titres de colonnes et le format tableau.

Ok mais vous n'avez pas repris la colonne A dans la format. Faites le sur le fichier chez vous, je vais le faire sur celui que vous avez posté

Ensuite, faites déjà ceci : allez dans le gestionnaire de Nom et sélectionnez Tableau1. Click sur Modifier et changez le nom tableau1 en --> Tab_Data
C'est juste une suggestion de nom évidemment. Si vous voulez autre chose dites moi

Merci de ne pas reposter le fichier.

Ah oui, là j'étais pas encore né ... :)

Quand au stock je saurais pas dire.

Exact ! petite erreur d'inattention de ma part, merci.

Autre point, je vois que vous avez attribué "Données" comme codename de la feuille Données
Evitez absolument les accents à ce niveau là. Le mieux est d'ailleurs d'éviter les accents et espaces aussi dans le noms des feuilles lorsque vous faites appel à VBA

- renommez "Données" en --> Donnees
- Dans votre USF, collez le code ci-dessous pour l'ouverture de l'USF

Private Sub UserForm_Initialize()
Dim c As Range
Dim tablo As Collection
Dim item

'Alimentation combobox1
Set tablo = New Collection
With Donnees
    On Error Resume Next
    For Each c In .ListObjects("Tab_Data").ListColumns(1).DataBodyRange
        tablo.Add c.Value, CStr(c.Value)
    Next c
    On Error GoTo 0
    For Each item In tablo
        Me.ComboBox1.AddItem item
    Next item
End With
'Combobox alimentée par une liste fixe'
ComboBox6.List() = Array("Blanc", "Noir", "Gris", "Inox")

End Sub

Attention à votre nom Tableau1 qui doit être renommé "Tab_Data"

Si ok, on passe à la combobox2

Ok pour les accents et les espaces, c'est bien noté.

Alors, je n'ai pas de message d'erreur l'UserForm s'ouvre bien mais je n'ai aucun élément dans la combobox1.

capture d ecran 14
Rechercher des sujets similaires à "combobox variables"