Visualisation interactive SGBD

Bonjour le forum,

J'ai réalisé un userform 6, dans mon fichier, j'ai commencé à coder mais je ne sais pas comment les checkbox et les listbox vont rentrer en relation.

Le but de l'userform est de mettre dans la listbox 2 l'ensemble des références des détecteurs de la base de données (feuil2) correspondant aux critères sélectionnés (checkbox1 à 5 et listbox 1).

En espérant avoir été assez clair.

PS : micro 5 PID = ref SK*

microclip XT = ref KA*

Bonjour le forum,

J'essaie d'avancer mais je coince :

Private Sub Checkbox3_Click()
    Dim NL As Integer 'déclare la variable NL (Nombre de lignes)
    Dim NC As Byte 'déclare la variable NC (Nombre de Colonnes)
    Dim i As Integer 'déclare la variable I (Incrément de ligne)

    Me.ListBox2.ColumnCount = 2 'définit le nombre de colonnes de la listbox
    Me.ListBox2.ColumnWidths = ";0pt" 'masque la seconde colonne de la listbox
    Set A = Sheets("Applications") 'définit l'onglet A
    Set Fs = Sheets("Fichier_source") 'définit l'onglet Fs
    Fs.Unprotect "QSETVX" 'déprotège l'onglet Fs
    TC = Fs.Range("A1").CurrentRegion 'définit le tableau de cellules TC
    NL = UBound(TC, 1) 'définit le nombre de lignes NL du tableau de cellules TC
    NC = UBound(TC, 2) 'définit le nombre de colonnes NC du tableau de cellules TC
    For i = 2 To NL 'boucle sur toutes les ligne de TC (en partant de la seconde)
       'condition : si la valeur ligne I colonne 10 (=>colonne J) de tc est égale à "En Stock",
       If CheckBox3 = True And TC(i, 5) = "A étalonner" Then
            With Me.ListBox2 'prend en compte la listbox
               .AddItem 'ajoute un élément
               .Column(0, .ListCount - 1) = TC(i, 1) 'récupere la référence dans la colonne 0
               .Column(1, .ListCount - 1) = i 'récupère le numéro de ligne dans la colonne 1 (masquée)
           End With 'fin de la prose en compte de la listbox
'***************************************************************************************************************************************
'ICI JE SOUHAITERAI RETIRER UNIQUEMENT LES VALEURS CONCERNEES ET NON TOUT LES ITEMS DE LA LISTBOX
'***************************************************************************************************************************************
        ElseIf CheckBox3 = False And TC(i, 5) = "A étalonner" Then
            With Me.ListBox2 'prend en compte la listbox
               .Items.Remove 'supprime un élément
               .Column(0, .ListCount - 1) = TC(i, 1) 'récupere la référence dans la colonne 0
               .Column(1, .ListCount - 1) = i 'récupère le numéro de ligne dans la colonne 1 (masquée)
           End With 'fin de la prose en compte de la listbox
       End If 'fin de la condition
    Next i 'prochaine ligne de la boucle
End Sub

Bonjour le forum,

Personne n'a une idée?

@+

Bonjour,

comme ce sujet est déjà en cours sur au moins un autre forum, on ne va pas répondre ici !

Bonjour le forum,

Bon j'essaie de faire autrement mais ça rame un peu

Déjà la macro insere une feuille Vi qui va permettre de filtrer à l'aide de Autofilter et la listbox2 renverra les valeurs filtrées de la colonne A.

Voici le code lors du clique dans la checkbox3 :

Private Sub Checkbox3_Click()
Dim Plage As Range
    Set Fs = Sheets("Fichier_source") 'définit l'onglet Fs
    Set Vi = Sheets("Visualisation interactive") 'définit l'onglet Vi
    Set Plage = Vi.Range("A2:A" & Vi.Range("A" & Rows.Count).End(xlUp).Row).SpecialCells(xlCellTypeVisible)
        If CheckBox3.Value = False Then
            With Vi
            .Range("A1:K1").AutoFilter
            .Range("$A$1:$K$300").AutoFilter Field:=5, Criteria1:="A étalonner"
            End With
        End If
        If CheckBox3.Value = True Then
            With Vi
            .Range("A1:K1").AutoFilter
            .Range("$A$1:$K$300").AutoFilter Field:=5
            End With
        End If
    Me.ListBox2.Clear
    For Each C In Plage
    If C.Value <> "" Then Me.ListBox2.AddItem C.Value
    Next C
End Sub

2 choses bizarres :

1°. il faut cliquer plusieurs fois dans la checkbox pour que cela fonctionne

2°. checkbox = true et checkbox = false sont inversés !!!

Rechercher des sujets similaires à "visualisation interactive sgbd"