Erreur dans le code VB

Bonjour,

voici un bout de mon code qui ne fonctionne pas
je ne sais pas pourquoi il n'affiche rien dans le ListBox quand je selectionne une option( quelque soit l'option d'ailleurs)

Private Sub Cmd_Add_Click()
' c'est l'étape final
' la variable choix recupère l'i du choix effectué dans la liste
choix = List1.ListIndex

' test : un choix a-t-il été fait ?
If choix = -1 Then
tutu = MsgBox("Vous n'avez rien choisi !", vbExclamation, "Erreur")
Else

' Recupération dans choixtexte de l'intitulé du choix
choixtexte = List1.List(choix)
tutu = MsgBox("Vous avez choisi : " & choixteste, vbInformation, "Choix effectué")

End If

End Sub

Private Sub Form_Load()
' Mise à blanc des cases à cocher
Opt(0).Value = False
Opt(1).Value = False
Opt(2).Value = False

End Sub

Private Sub Opt_Click(i As Integer)

' Vidage des éléments presents dans la liste

List1.Clear

' Remplissage de la liste
' on pourrait le faire à partir d'un fichier texte, mais cette méthode nous arrange bien
For i = 0 To 2
Next
If i = 0 Then
Liste1.AddItem ("Présent")

If i = 1 Then
Liste1.AddItem ("Conjoint")
Liste1.AddItem ("Président")
Liste1.AddItem ("Membre-adhérent")
Liste1.AddItem ("pouvoir-blanc")

Else
Liste1.AddItem ("Nul-à-personne-dénommée")
Liste1.AddItem ("Pouvoir-blanc-nul")

End If

End If

End Sub

Pouvez-vous me dire s'il vous plais pourquoi il ne marche pas!

Merci d'avance
4qnow
Configuration: Windows Vista
Internet Explorer 7.0

3 réponses

  1. Merci DOS,
    j'ai fait la modification, seulement l'autre bugg est qu'il afficha la meme liste quelque soit l'option selectionnée

    voici la modification

    For i = 0 To 2

    If i = 0 Then
    List1.AddItem ("Présent")
    Else
    If i = 1 Then
    List1.AddItem ("Conjoint")
    List1.AddItem ("Président")
    List1.AddItem ("Membre-adhérent")
    List1.AddItem ("pouvoir-blanc")
    Else
    List1.AddItem ("Nul-à-personne-dénommée")
    List1.AddItem ("Pouvoir-blanc-nul")
    End If
    End If
    Next
    End Sub

    il affiche alors {conjoint, president, membre-adherent, pouvoir-blanc, nul-à-personne-denommée et pouvoir-blanc-nul} ce qui n'est pas normal.
    Remarquons aussi que Liste1 a été remplacée par List1. as-tu une idée ?

    Merci
    1. Salut,
      List1.Clear 
      
      ' Remplissage de la liste 
      ' on pourrait le faire à partir d'un fichier texte, mais cette méthode nous arrange bien 
      For i = 0 To 2 
      Next 
      If i = 0 Then 
      List1.AddItem ("Présent") 
      

      ou
      Liste1.Clear 
      
      ' Remplissage de la liste 
      ' on pourrait le faire à partir d'un fichier texte, mais cette méthode nous arrange bien 
      For i = 0 To 2 
      Next 
      If i = 0 Then 
      Liste1.AddItem ("Présent") 
      

      DOS
      1. DOS, c'est encore moi,
        ça marche.
        j'ai annulé ( en mettant en commentaire) la boucle for et le next car je pense qu'elle recupere dans son cpt toute l'ensemble des listes

        voici la modif

        Private Sub Opt_Click(i As Integer)

        ' Vidage des éléments presents dans la liste

        List1.Clear

        ' Remplissage de la liste
        ' on pourrait le faire à partir d'un fichier texte, mais cette méthode nous arrange bien
        ' For i = 0 To 2

        If i = 0 Then
        List1.AddItem ("Présent")
        Else
        If i = 1 Then
        List1.AddItem ("Conjoint")
        List1.AddItem ("Président")
        List1.AddItem ("Membre-adhérent")
        List1.AddItem ("pouvoir-blanc")
        Else
        List1.AddItem ("Nul-à-personne-dénommée")
        List1.AddItem ("Pouvoir-blanc-nul")
        End If
        End If
        ' Next
        End Sub

        en tout cas merci. je vais continuer la suite car le traitement ne s'arrete pas là.
        Merci à tous
    2. re :

      et la boucle for devrait se lire comme suit :

          For i = 0 To 2
              If i = 0 Then
                  Liste1.AddItem ("Présent")
              Else
                  If i = 1 Then
                      Liste1.AddItem ("Conjoint")
                      Liste1.AddItem ("Président")
                      Liste1.AddItem ("Membre-adhérent")
                      Liste1.AddItem ("pouvoir-blanc")
                  Else
                      Liste1.AddItem ("Nul-à-personne-dénommée")
                      Liste1.AddItem ("Pouvoir-blanc-nul")
                  End If
              End If
          Next
      


      si j'ai bien compris !

      DOS