Effectuer tri grâce à une CheckBox

Bonjour à tous, j'aurai aimé faire un tri grâce aux checkbox mais malheureusement ça ne fonctionne pas. J'aurai aimé avoir votre avis sur ce que j'ai fait. Merci d'avance :)

Je ne saurais pas trop comment boucler mes CheckBox non plus...

Enfin bref là je suis un peu perdu.

Sub tri()

  ' Definition des Colonnes'
    Selection_Column = 1
    Type_Column = Selection_Column + 1
    Adresse_Colum = Name_Column + 1
    Data_Column = Adresse_Colum + 1

    'Definition des valeur de Type_Column'
    Type_Registre = "REGISTRE"                      ' Definit la zone dans laquelle les Registres vont être définis'
    Type_Memoire = "MEMOIRE"

    nb_ligne = Cells.Find("*", [A1], , , , xlPrevious).Row

    i = 2

    While i <= nb_ligne

        If CheckBox001 = True And MaFeuille.Cells(i, Type_Column) = Type_Registre Then

        Debug.Print MaFeuille.Cells(iloop_ligne, Data_Column)

        End If

    Wend

End Sub
17testselection.xlsm (35.84 Ko)

Dans la recherche de mon problème je me suis rendu compte de quelque chose

Sub tri()

    Dim MaFeuille As Worksheet
    Dim test1 As Boolean

    Set MaFeuille = Sheets("Pilotage")
    MaFeuille.CheckBoxes("CheckBox001").Value = False
    test1 = MaFeuille.CheckBoxes("CheckBox001").Value
    Debug.Print test1 
End Sub

le test1 prend la valeur "Vrai" mais quand je ne le déclare pas As Boolean il me renvoie la valeur -4146 si False et 1 si True.

Je comprends pas trop comment ça fonctionne pour le coup. Surtout que je le force à False et que ça me renvoie quand même un Vrai...

J'ai trouvé certains éléments de réponse. Pour ceux que ça pourrait aider voici ce que j'ai fait, et ça fonctionne.

Sub tri()

    Dim MaFeuille As Worksheet

    Selection_Column = 1
    Type_Column = Selection_Column + 1
    Adresse_Colum = Type_Column + 1
    Data_Column = Adresse_Colum + 1

    Type_Registre = "REGISTRE"                     
    Type_Memoire = "MEMOIRE"

    'Initialisation de la feuille active
    Set MaFeuille = Sheets("Pilotage")

    'Comptage du nombre de ligne dans le fichier excel
    NbreLigne = Cells.Find("*", [A1], , , , xlPrevious).Row

    i = 2

        While i <= NbreLigne

            Set ctrCheckBox = MaFeuille.CheckBoxes("CheckBox" & (i - 1))
            If ((MaFeuille.Cells(i, Type_Column) = Type_Registre) And (ctrCheckBox.Value = 1)) Then
            Debug.Print MaFeuille.Cells(i, Data_Column)

       End If 

        i = i + 1      

    Wend   

End Sub
5testselection.xlsm (37.61 Ko)

Bonjour,

Je m'aperçois qu'aucun de vos post n'est mis en [RESOLU]

image

Si tel est bien le cas, il serait bien de le faire SVP

A+

Bonjour,
Après avoir soldé tes posts, regarde le fichier joint.
J'ai supprimé les cases à cocher !
Pour le tri, tu reformules ta question.
Cdlt.

5testselection.xlsm (19.93 Ko)
Rechercher des sujets similaires à "effectuer tri checkbox"