sancho12345
Messages postés131Date d'inscriptionjeudi 21 mai 2009StatutMembreDernière intervention18 mars 2012
-
9 févr. 2010 à 19:19
sancho12345
Messages postés131Date d'inscriptionjeudi 21 mai 2009StatutMembreDernière intervention18 mars 2012
-
9 févr. 2010 à 22:05
Bonjour
J'utilise la sub suivante (pour remplir mon listview à partir d'une requete
sur une BDD access:
' connexion à la base de données
connect
'Ouverture de la base de données
cnx.Open
sql_tout_les_noms = "SELECT xxxxxxxxxxxxx FROM yyyyy order by xxxxxx"
rst.Open sql_tout_les_noms, cnx
'affichage des enregistrements
i = 0
If rst.EOF = True Then
Else
rst.MoveFirst
While Not (rst.EOF)
acces_base.ListView1.ListItems.Add , , rst!noms_pdt
acces_base.ListView1.ListItems(acces_base.ListView1.ListItems.Count).ListSubItems.Add , , rst!xxx_pdt
acces_base.ListView1.ListItems(acces_base.ListView1.ListItems.Count).ListSubItems.Add , , rst!yyyy
acces_base.ListView1.ListItems(acces_base.ListView1.ListItems.Count).ListSubItems.Add , , rst!zzz_pdt
acces_base.ListView1.ListItems(acces_base.ListView1.ListItems.Count).ListSubItems.Add , , rst!aaa
acces_base.ListView1.ListItems(acces_base.ListView1.ListItems.Count).ListSubItems.Add , , rst!iii_bbb
rst.MoveNext
Wend
End If
rst.Close
End Sub
Mon problème c'est que certains champs de ma BDD sont vides donc au
remplissage il y a un Bug .
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201578 9 févr. 2010 à 20:21
Salut
Dans ta requète, tu peux demander à Access de remplacer les champs (pas "Case") nuls par autre chose :
Select IsNull(nomDuChamp1, "<vide>"), IsNull(nomDuChamp2, "<vide>") From ...
Sinon, tu peux le traiter après requète, lors de ta boucle :
If rst!noms_pdt Is Null Then
acces_base.ListView1.ListItems.Add , , "<vide>"
Else
acces_base.ListView1.ListItems.Add , , rst!noms_pdt
End If
et ce, pour chacun des champs
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
sancho12345
Messages postés131Date d'inscriptionjeudi 21 mai 2009StatutMembreDernière intervention18 mars 2012 9 févr. 2010 à 21:41
Bonsoir
Merci pour ta réponse.
Voila ceux que j'ai essayé mais si des champs et vide il bug toujours
' connexion à la base de données
connect
'Ouverture de la base de données
cnx.Open
sql_tout_les_noms = "SELECT xxxxxxxxxxxxx FROM yyyyy order by xxxxxx"
rst.Open sql_tout_les_noms, cnx
'affichage des enregistrements
i = 0
If rst.EOF = True Then
Else
rst.MoveFirst
While Not (rst.EOF)
If rst!noms_pdt Is Null Then
acces_base.ListView1.ListItems.Add , , "<vide>"
Else
acces_base.ListView1.ListItems.Add , , rst!noms_pdt
End If
rst.MoveNext
Wend
End If
rst.Close
End Sub