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

Macros et VBA Excel Discussion :

Quel est la valeur d'une listbox multiselect non selectionnée?


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 66
    Points : 77
    Points
    77
    Par défaut Quel est la valeur d'une listbox multiselect non selectionnée?
    Salut je dois empecher un utilisateur de valider sans avoir rempli completement ma userform.
    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
    Sub oubli()
    'Messages de protection des remplissages'
    condition_sortie = False
    If textbox1.value = rien Then
    MsgBox "données incompletes.", 0, "Saisie imcomplète."
    condition_sortie = True
    End If
    If combobox2.value= rien Then
    MsgBox "données incompletes.", 0, "Saisie imcomplète."
    condition_sortie = True
    End If
    If combobox1.Value = rien Then
    MsgBox "données incompletes.", 0, "Saisie imcomplète."
    condition_sortie = True
    End If
     
    If listbox1.ListIndex = -1 Then
         MsgBox "Saisissez une échéance ou un déroulement.", 0, "Saisie imcomplète."
         condition_sortie = True
    End If
    End Sub
    Le souci c'est que ma listbox1 est en multiselect et que j'ai essayé = rien, .listindex =-1, ="" cela ne fonctionne pas je ne connais pas la valeur de cette listbox lorsqu'il n'y a pas de selection en bleu.

    Si quelqu'un a la solution je serrais au ange.
    Merci JZV

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    La valeur est FAUX -> False -> 0
    Pour le savoir, mets un bouton sur ton userform et teste ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub CommandButton1_Click()
        For i = 0 To UserForm1.ListBox1.ListCount - 1
            MsgBox UserForm1.ListBox1.Selected(i)
        Next
    End Sub
    Bonne journée

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Bonjour,

    je te propose cette démo à mettre dans un événement click d'un bouton de commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim toto As String
       toto = ""
       For i = 0 To Listbox1.ListCount - 1
         If Listbox1.Selected(i) Then
            toto = toto & "article sélectioinné : " & i & " disant " & Listbox1.List(i) & vbCrLf
         End If
       Next
       If toto = "" Then
         MsgBox "rien de sélectionné"
       Else
         MsgBox toto
       End If
    EDIT : mais tu préfèreras (surtout su ta liste est longue) éviter une boucle à chaque fois !

    Voilà alors une méthode :

    tout en haut de ton code, une variable (ici toto)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private toto As Integer
    dans l'évènement click de ta listbox :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     toto = IIf(Listbox1.Selected(Listbox1.ListIndex), toto + 1, toto - 1)
    où tu veux ailleurs dans ton code (dans un bouton de coimmande ou ailleurs) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox toto & " articles sélectionnés dans listbox1"
    et tu sauras où tu en es sans les lenteurs éventuelles d'une boucle

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 12
    Dernier message: 23/04/2014, 16h54
  2. [ATL] Compter les valeurs d'une listBox
    Par MrMaze dans le forum MFC
    Réponses: 2
    Dernier message: 01/08/2006, 10h08
  3. Réponses: 10
    Dernier message: 23/05/2006, 17h42
  4. Attribuer des valeurs dans une ListBox
    Par OjBarbare dans le forum MFC
    Réponses: 5
    Dernier message: 06/12/2005, 11h28
  5. Apelle d une fonction js avec la valeur d'une listbox
    Par echecetmat dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 15/02/2005, 16h53

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