Aide VBA listbox

Bonjour à la communauté,

je viens vers vous car j'ai un petit souci pour trouver le code VBA qui me permettra enfin d'avancer sur mon fichier :)

J'ai créé un userform avec deux listbox, la première où j'ai tous mes critères et la deuxième ou je sélectionne certains critères de la 1ère listbox. Jusque là c'est bon tout va bien :) mais voilà je souhaite qu'en fonction des critères sélectionnés de la 2 ème listebox, les colonnes équivalentes de l'onglet "GEO" viennent se coller dans la feuille "Données". Je cherche depuis plusieurs semaines et je n'arrive toujours pas à trouver la solution à mon problème.

Je joint le fichier pour que vous puissiez peut être mieux comprendre

Merci de votre aide

20bi-vba.zip (952.54 Ko)

Bonjour,

le code affecté au bouton "Sélectionner les critères de BI"

Private Sub CommandButton3_Click() 'bouton validé les critères
    Dim Col_Dest As Long, Cpt As Long, DerLig_c As Long
    Dim f1 As Worksheet, f2 As Worksheet
    Dim c As Range
    Dim Titre As String

    Set f1 = Sheets("GEO")
    Set f2 = Sheets("Données")
    f2.Columns("A:I").ClearContents
    Col_Dest = 1
    For Cpt = 0 To ListBox2.ListCount - 1
        Titre = Me.ListBox2.List(Cpt)
        With f1.Rows(1)
            Set c = .Find(Titre, lookat:=xlWhole)
            If Not c Is Nothing Then
                DerLig_c = f1.Cells(Rows.Count, c.Column).End(xlUp).Row
                Range(f1.Cells(1, c.Column), f1.Cells(DerLig_c, c.Column)).Copy f2.Cells(1, Col_Dest)
                Col_Dest = Col_Dest + 1
            End If
        End With
    Next Cpt
    MsgBox "Importation terminée.", vbInformation + vbOKOnly, "Fichier Texte -> Classeur EXCEL"
    Unload Me
    Set f1 = Nothing
    Set f2 = Nothing
End Sub

le fichier

Cdlt

Bonjour

Bonjour à tous

Un autre proposition mais je ne suis pas sûr d'avoir bien compris la demande.

11bi-vba-v1.zip (974.46 Ko)

Bye !

Merci beaucoup Arturo83, c'est exactement ce que je voulais :). Si je peux me permettre j'ai un autre souci dans la macro du "module1", lorsque je l’exécute cela me crée bien les onglets de mes tournées sauf la dernière tournée qui n'est pas créée. Aurais-tu une idée pour résoudre le problème ?

Il faut certainement revoir les numéros des tournées sinon la macro va créer 8000 onglets

Merci Gmb mais ce n'est pas exactement ce que je souhaitais, la macro d'Arturo83 fonctionne très bien

Avant d'aller plus loin, votre macro commence par faire des remplacements de valeurs, mais on ignore dans quelle feuille: "Données", "GEO" ?

Dans l'onglet "données" je remplace les valeurs des colonnes G et H (vrai ou faux) par UI ou gardien ( colonne Q onglet données)

En gros lorsque la macro colle les données issues de la listbox2, dans l'onglet "données" en colonne G, s'il y a marqué "faux" alors rien et si "vrai" alors UI.

Pour la colonne H si "faux" alors rien si "vrai" alors gardien. il se peut que les critères "productif et gardien" ne soient pas demandés comme critère dans la listbox2.

C'est bien ce qui me semblait, ce qui signifie que vous devez sélectionner dans textbox1 toujours les mêmes items à basculer dans la textbox2 (ou du moins respecter un certain ordre) qui seront à leur tour reportés dans la feuille "Données".

- Mais si vous ne sélectionnez pas les bons items, que se passera t il? - Ou encore, si vous ne les saisissez pas dans le bon ordre et que les colonnes des tournées soient recopiées autre part que dans les colonnes G et H ? Avez-vous pensé à tout ça?

Donc, si je suis votre raisonnement, il faut toujours que les colonnes G et H contiennent les données des tournées P et G, si c'est bien cela, alors il est inutile de les sélectionner dans la textbox1 si cela doit se faire implicitement. En attente de vos éclaircissements sur ces points.

Effectivement je n'avais pas pensé à ça. je viens de tester la macro sans les critères productif et gardien et ça n'a pas d'impact ou alors je n'est pas vu mais il est vrai que ce n'est vraiment pas terrible. Est-il possible d'y inclure une condition avec les critères productif et gardien peu importe dans quelles colonnes ils s'y retrouvent ou ne pas faire cette action s'ils ne sont pas là ?

Bonjour,

Voilà la macro 1 quelque peu modifiée, elle recherche la position des P et G avant de faire les remplacements, puis elle crée les feuilles en fonction des tournées et de de l'ordre octroyée à ces tournées. là aussi ,il y a recherche de la position de ces 2 termes dans la feuille.

Cdlt

Bonjour,

Je viens de tester la macro et j'ai un souci. Lorsque je rentre dans les colonnes P et G "onglet "données" faux et vrai, il n'y a que la colonne G qui change bien en "gardien" mais rien pour P et lorsque que relance la macro une deuxième fois rien ne change il reste les vrai ou faux. J'ai également fait un test en chngaent de colonne P et G et là c'est la colonne P qui fonctionne mais pas la G.

Je perds également mes entêtes de colonnes lorsque que les feuilles sont créés.

Le problème vient du fait que vous utilisez "VRAI" ou FAUX" et que ces termes sont utilisés par le VBA, donc ça ne fonctionne pas, remplacez "VRAI" par "BON" et FAUX" par MAUVAIS" ou ce que vous voulez.

ok va falloir dans ce cas que je fasse différemment car le fichier que je reçoit, arrive avec VRAI et FAUX.

Rechercher des sujets similaires à "aide vba listbox"