HELP Aide Userform - Tableau - Combobox Fonction d'une autre

Signaler
Messages postés
53
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
31 mars 2008
-
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
-
Bonjour à tous, C'est encore moi:

En espérant que vous puissiez m'aider....merci
N' hésiter pas à me demander si cela n'est pas assez clair

J'ai plusieurs questions à vous poser, pour commencer:












Explication de la mise en forme:







J'ai un fichier Excel composé d'une 15aines de feuilles de style d'outils dont une page d'Accueil....
Le but est de créer une Gestion de stock, pour le moment tous fonctionne impeccablement je peut ajouter, retirer, faire inventaire, faire des recherches, des consommations....
Mais maintenant j'ai un pb qui se pose,
Pour une sorte d'outil, je veux intégrer les references fournisseurs....et j'ai le tableau suivant:

Voila, j'ai une userform constituée de 3 combobox

Combobox Diametres
Combobox Fournisseurs
Combobox References Fournisseurs

Mon tableau est fait de la maniere suivante :

Colonne B : de ligne 15 à 35

- Caracteristiques outils

Ligne 13: 5 Fournisseurs

- Fournisseurs 1: C13:E13 (Cellules Fusionnées)
- Fournisseurs 2: F13:H13
- Fournisseurs 3: I13:K13
- Fournisseurs 4: L13:N13
- Fournisseurs 5: O13:Q13

Ligne 14: 15 References

- Ref 1 à Ref3 Pour Fournisseurs 1: C14 à E14
- Ref 4 à Ref6 Pour Fournisseurs 2: F14 à H14
- Ref 7 à Ref9 Pour Fournisseurs 3: I14 à K14
...etc

Ce que je souhaite, c'est lorsque je selectionne dans ma seconde combobox, le fournisseur de mon Outils, Cela entraine que dans troisieme combobox, il ne reste le choix que des reference de celui - ci.




J'ai composé grace à tout ce que j'ai pu trouver les aides et à votre aide depuis le début le code suivant:





Mais celui - ci comporte quel incovénients:

Private Sub userform_initialize()


Dim Mes_Diametres_Fraises As String
Dim Col25 As Integer
Dim Lig25 As Integer
   Col25 = 2
   For Lig25 = 15 To 35
    Mes_Diametres_Fraises = Sheets("Fraises de Finition").Cells(Lig25, Col25).Value
    Gestion_Outils_2.ComboBox_Diametres_Fraises.AddItem Mes_Diametres_Fraises
   Next Lig25



With Sheets("Fraises de Finition")




   Dim Lig26 As Integer
   Dim Col26 As Integer
   Lig26 = 13
   For Col26 = 3 To 17
            If .Cells(Lig26, Col26).Value <> "" Then  'si la cellule n'est pas vide alors
                Gestion_Outils_2.ComboBox_Marques_Fr_Finition.AddItem .Cells(Lig26, Col26).Value
            End If
       Next Col26
   
 End With
 
End Sub





''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''




Private Sub ComboBox_Marques_Fr_Finition_Change()



Dim Fr_Tittex As String
Dim Col30 As Integer



If Gestion_Outils_2.ComboBox_Marques_Fr_Finition.Value = "TITTEX" Then



ComboBox_Ref_Fr_Finition.Clear
  
   For Col30 = 3 To 5
    Fr_Tittex = Sheets("Fraises de Finition").Cells(14, Col30).Value
    Gestion_Outils_2.ComboBox_Ref_Fr_Finition.AddItem Fr_Finition
   Next Col30



'ComboBox_Ref_Fr_Finition.AddItem "Ref1"
'ComboBox_Ref_Fr_Finition.AddItem "Ref2"
'ComboBox_Ref_Fr_Finition.AddItem "Ref3"



ElseIf Gestion_Outils_2.ComboBox_Marques_Fr_Finition.Value = "FRAISA" Then
ComboBox_Ref_Fr_Finition.Clear
ComboBox_Ref_Fr_Finition.AddItem "Ref4"
ComboBox_Ref_Fr_Finition.AddItem "Ref5"
ComboBox_Ref_Fr_Finition.AddItem "Ref6"



ElseIf Gestion_Outils_2.ComboBox_Marques_Fr_Finition.Value = "PROTOTYP" Then
ComboBox_Ref_Fr_Finition.Clear
ComboBox_Ref_Fr_Finition.AddItem "Ref7"
ComboBox_Ref_Fr_Finition.AddItem "Ref8"
ComboBox_Ref_Fr_Finition.AddItem "Ref9"



ElseIf Gestion_Outils_2.ComboBox_Marques_Fr_Finition.Value = "X" Then
ComboBox_Ref_Fr_Finition.Clear
ComboBox_Ref_Fr_Finition.AddItem "Ref10"
ComboBox_Ref_Fr_Finition.AddItem "Ref11"
ComboBox_Ref_Fr_Finition.AddItem "Ref12"



ElseIf Gestion_Outils_2.ComboBox_Marques_Fr_Finition.Value = "Y" Then
ComboBox_Ref_Fr_Finition.Clear
ComboBox_Ref_Fr_Finition.AddItem "Ref13"
ComboBox_Ref_Fr_Finition.AddItem "Ref14"
ComboBox_Ref_Fr_Finition.AddItem "Ref15"



End If






End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''




Private Sub ajouter_Fr_Finition_click()



If CheckBox_Fr_Finition_HSSE_Non_Revetu True And Gestion_Outils_2.ComboBox_Ref_Fr_Finition.Value "Ref1" Then
Sheets("Fraises de Finition").Cells(ComboBox_Diametres_Fraises.ListIndex + 15, 3).Value = Sheets("Fraises de Finition").Cells(ComboBox_Diametres_Fraises.ListIndex + 15, 3).Value + TextBox_Quantite_Fr_Finition.Value
MsgBox "Vous venez d'en RENTRER   " & TextBox_Quantite_Fr_Finition.Value, vbExclamation, "Gestion Stock Outils"
End If



End Sub





Private Sub retirer_Fr_Finition_click()



If CheckBox_Fr_Finition_HSSE_Non_Revetu True And Gestion_Outils_2.ComboBox_Ref_Fr_Finition.Value "Ref1" Then
Sheets("Fraises de Finition").Cells(ComboBox_Diametres_Fraises.ListIndex + 15, 3).Value = Sheets("Fraises de Finition").Cells(ComboBox_Diametres_Fraises.ListIndex + 15, 3).Value - TextBox_Quantite_Fr_Finition.Value
MsgBox "Vous venez d'en RENTRER   " & TextBox_Quantite_Fr_Finition.Value, vbExclamation, "Gestion Stock Outils"
End If



End Sub

Le code ci-dessus en Vert fonctionne parfaitement grace à Bigfish_le vrai

Le code ci-dessus en rouge fonctionne mais suscite quelques soucis:
   -Celui fonctionne très bien, mais sachant qu'ensuite j'ai pas mal de fonction dont ajouter et retirer de mon stock en noir dans le code ci-dessus.
Cela veut dire qu'il faudrait que je multiplie par 15 ref x 3 matériau = 45 ces parties de code pour le finir.

   - Habituellement j'aurais voulu l'écrire avec un For To Next (en bleu dans le code ci-dessus) comme pour le reste et diviser par 15 le code mais celui-ci ne fonctionne pas dans ma condition ( qd je l'essaie ma liste est vide).

Voila,
En espérant avoir été assez clair dans mes explications...

Est-ce quelqu'un peut m'aider???????Help
Merci

1 réponse

Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
Salut,

si tu n'as fais aucune association entre les fournisseurs et les references, tu n'as pas le choix il faudra te tapper chaque cas 1 par 1.
Si c'est bien le cas je te deconseil quand meme de continuer dans cette voie. Il faut absolument associer les fournisseurs aux references.
Par exemple :

TITEX                             FRAISA                          PROTOTYP
Ref1      Ref2      Ref3      Ref4      Ref5      Ref6      Ref7      Ref8      Ref9

dans cette exemple il est facile de retrouver les references par fournisseur.  2 lignes de code devraient suffire.

1ere ligne tu cherches la colonne du fournisseur
2ieme ligne tu remplis la combobox

A+