Distribution de critère

Fermé
benoit62 - 14 déc. 2011 à 16:35
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 20 déc. 2011 à 08:24
Bonjour,
j'ai dans excel 5 listes de critères ex: couleurs (+de 70 couleurs) ; taille (6 tailles); latéralisation (droitier gaucher); dureté (20 dureté possible); version( 20 versions)

pour chaque article générique (dont je dois renseigner un code générique) je dois choisir parmis les 5 critères possible, 2 qui seront utilisés (ex taille et couleur)

je souhaite que excel presente les deux listes choisies et que dans ces listes je puisse cocher les (dans l'exemple) taille et couleurs utilisées.

Ensuite, excel devra générer une serie de ligne du type
codegenerique-taillechoisie1-couleurchoisie1
codegenerique-taillechoisie2-couleurchoisie1
codegenerique-taillechoisie3-couleurchoisie1
codegenerique-taillechoisie1-couleurchoisie2
codegenerique-taillechoisie2-couleurchoisie2
codegenerique-taillechoisie3-couleurchoisie2
codegenerique-taillechoisie1-couleurchoisie3
codegenerique-taillechoisie2-couleurchoisie3
codegenerique-taillechoisie3-couleurchoisie3
et ainsi de suite jusqu'a épuisement des tailles choisie et couleurs choisies

merci de votre aide, une facture raisonnable peut être établie

3 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 751
16 déc. 2011 à 15:32
Salut,

Un exemple par userform.

Un userform avec : 1 textbox, 2 combobox, 1 bouton et 1 listbox

Les codes :
Option Explicit

Private Sub ComboBox1_Change()
Dim Col As Byte

If ComboBox1 = "" Then Exit Sub
ListBox1.Clear
ComboBox2.Clear
With Sheets(1)
    For Col = 1 To 5
        If .Cells(1, Col) <> ComboBox1 Then
            ComboBox2.AddItem .Cells(1, Col)
        End If
    Next
End With
End Sub

Private Sub CommandButton1_Click()
Dim Col As Byte
Dim TblCri1() As String, TblCri2() As String
Dim DrLig As Long, Lign As Long

If TextBox1 = "" Then
    MsgBox "Saisie du code générique obligatoire"
    Exit Sub
ElseIf ComboBox1 = "" Or ComboBox2 = "" Then
    MsgBox "Saisie des 2 critères obligatoire"
    Exit Sub
End If
With Sheets(1)
    Col = .Rows(1).Find(ComboBox1).Column
    DrLig = .Columns(Col).Find("*", , , , xlByColumns, xlPrevious).Row
    ReDim TblCri1(DrLig - 2)
    For Lign = 2 To DrLig
        TblCri1(Lign - 2) = .Cells(Lign, Col)
    Next Lign
    Col = .Rows(1).Find(ComboBox2).Column
    DrLig = .Columns(Col).Find("*", , , , xlByColumns, xlPrevious).Row
    ReDim TblCri2(DrLig - 2)
    For Lign = 2 To DrLig
        TblCri2(Lign - 2) = .Cells(Lign, Col)
    Next Lign
End With
ListBox1.Clear
For Lign = 0 To UBound(TblCri1)
    For Col = 0 To UBound(TblCri2)
        ListBox1.AddItem TextBox1 & " - " & TblCri1(Lign) & " - " & TblCri2(Col)
    Next
Next
End Sub

Private Sub UserForm_Initialize()
Dim Col As Byte

ComboBox1.Clear
With Sheets(1)
    For Col = 1 To 5
        ComboBox1.AddItem .Cells(1, Col)
    Next
End With
End Sub

PS : ici on rase gratis, donc pas d'argent...
0
GENIAL !!!!!!
JE NE SAIS COMMENT VOUS DIRE MERCI !!!!

j'ose encore abuser de vous et de votre générosité...
serait-il possible de recuperer les codes générés dans la feuille 2 plutôt que dans l'userform...

part contre je n'ose pas vous demander plus...
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 751
18 déc. 2011 à 11:14
Je fais ça dès demain.
Ne surtout pas hésiter à demander, ce site est fait pour ça.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 751
19 déc. 2011 à 09:12
Bonjour
Comme promis :
Exemple version 2
Les ajouts :
1- la totalité des choix créés dans la liste sont placés en Feuil2
2- possibilité de multisélection dans la liste et ajout d'un bouton qui envoie les données sélectionnées en Feuil3

What else?
0
j'en reste bouche Bé !!!!
en temps que petit commerçant de base, je suis éberlué devant tant de savoir...

MERCI

comment vous contacter en Privé?
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 751
20 déc. 2011 à 08:24
Il n'y a vraiment rien d'exceptionnel là dedans... Mais ça fait plaisir!!

De rien.

Vous pourrez trouver mon email personnel dans mon profil. Pour cela, il suffit de cliquer sur mon pseudo qui apparait à chacun de mes messages.
0