IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Visualisation interactive d'une base de donnée à l'aide d'un userform


Sujet :

Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2015
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Visualisation interactive d'une base de donnée à l'aide d'un userform
    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*

    Exemple de code que j'ai commencé mais qui ne fonctionne pas totalement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
        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
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut



    Bonjour,

    vu qu'ici ce n'est pas le forum dédié au VBA et que le sujet a déjà été posté dans un autre …

    Lire les trois premières discussions verrouillées "Important : …" de ce forum.



    __________________________________________________________________________________________________
    Je suis Charlie - Je suis Bardo
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

Discussions similaires

  1. [XL-2007] Visualisation interactive d'une base de données à l'aide d'un userform
    Par seybi dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 31/03/2015, 10h02
  2. [Débutant] Interaction sur une base de données PostgreSQL avec C#
    Par landry161 dans le forum Accès aux données
    Réponses: 5
    Dernier message: 29/11/2014, 09h07
  3. Interaction avec une base de données MySQL via python
    Par ismaeldndaw dans le forum Général Python
    Réponses: 2
    Dernier message: 01/09/2012, 15h45
  4. Réponses: 9
    Dernier message: 01/02/2010, 20h12
  5. Interaction avec une base de données
    Par despeludo dans le forum Excel
    Réponses: 1
    Dernier message: 24/11/2009, 11h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo