Erreur dans le code VB

4qnow Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   -  
4qnow Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   -
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
A voir également:

3 réponses

4qnow Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   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
DOS
 
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
0
4qnow Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   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
0
DOS
 
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
0