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. 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
    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