Supprimer un item vide d'un combobox [Résolu]

Messages postés
75
Date d'inscription
samedi 26 juillet 2003
Dernière intervention
21 mai 2014
- - Dernière réponse : Goth25
Messages postés
75
Date d'inscription
samedi 26 juillet 2003
Dernière intervention
21 mai 2014
- 29 nov. 2009 à 17:30
Bonjours à tous,

En vb2005, je remplis une combobox a l'aide d'une base de donnée access 2003 de cette facon :

Do Until rs.EOF
cmbSelection.Items.Add(rs.Fields("NuméroTél").Value)
rs.MoveNext()
Loop

Malheureusement, dans la BD j'ai des enrégistrement qui sont vide. Donc forcément à l'éxécution, étant donné que le combobox est en ordre croissant les 20 premières ligne du combobox sont vide.<

Est-ce qu'il y aurait une facon de détecter les vides de la bd avant même d'ajouter l'information dans mon Combobox ?

Merci bcp


Bonne journée !
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
29
1
Merci
je pencherai pour

        Do Until rs.EOF
            If Not ((IsDBNull(rs.Fields("NuméroTél").Value) True) OrElse (rs.Fields("NuméroTél").Value String.Empty)) Then
                cmbSelection.Items.Add(rs.Fields("NuméroTél").Value)
            End If
            rs.MoveNext()
        Loop


pas testé

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 112 internautes nous ont dit merci ce mois-ci

Commenter la réponse de PCPT
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
29
0
Merci
salut,

teste simplement que rs.fields ne soit pas null ou vide avant de l'ajouter


[hr]
Commenter la réponse de PCPT
Messages postés
75
Date d'inscription
samedi 26 juillet 2003
Dernière intervention
21 mai 2014
0
Merci
Merci bcp de la rapidité de la réponse.

J'ai donc tester ceci :

Do Until rs.EOF
If isnull(rs.Fields("NuméroTél").Value) Or (rs.Fields("NuméroTél").Value) = "" Then

rs.MoveNext()
Else
cmbSelection.Items.Add(rs.Fields("NuméroTél").Value)
rs.MoveNext()
End If
Loop

Malheureusement isnull du vb6 n'est pas compatible avec le vb.net. J'ai chercher pour system.vbnull et tenter quelque test mais en vain.

Vous n'auriez pas une petite exemple du comment je pourrais tester le null et le vide sur ma chaine ?

Merci bcp


Bonne journée !
Commenter la réponse de Goth25
Messages postés
1566
Date d'inscription
mardi 26 décembre 2000
Dernière intervention
5 avril 2013
4
0
Merci
Bonjour,

C'est lors de la construction du recorset (par requête sur ta base, donc), que tu dois faire "ce ménage", pas une fois remplie ta box ....
Commenter la réponse de jmf0
Messages postés
75
Date d'inscription
samedi 26 juillet 2003
Dernière intervention
21 mai 2014
0
Merci
Merci bcp PCPT, sa fonctionne.

jmf0, effectivement mais n'étant qu'un novice en sql, j'irai consulter le site web afin d'y faire une longue lecture . Mais uniquement apres ce projet qui tire à sa fin.

Merci encore






Bonne journée !
Commenter la réponse de Goth25

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.