Utiliser un RecordSet

Fermé
mcarre - Modifié par mcarre le 14/05/2014 à 11:06
f894009 Messages postés 17209 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 20 décembre 2024 - 15 mai 2014 à 14:31
Bonjour,

J'ai une requête SQL qui me ramène des informations sur des patients et qui les stock dans un Recordset ADODB. Je voudrais pouvoir stocker toutes ces lignes dans une zone de liste pour pouvoir choisir ce qui correspond.

Ce code correspond à ce que je voudrais faire mais il faut trouver un substitut à ListItems et ListSubItems.

Pouvez-vous m'aider ?

If requete.EOF Then
GoTo Fin
Else
requete.MoveFirst
For i = 1 To requete.RecordCount
ListePatient.RowSource.ListItems.Add i, , requete.Fields(0)
If requete.Fields(1) <> "" Then
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(1)
Else
ListePatient.ListItems(i).ListSubItems.Add , , " "
End If
If requete.Fields(2) <> "" Then
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(2)
Else
ListePatient.ListItems(i).ListSubItems.Add , , " "
End If
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(8)
If requete.Fields(3) <> "" Then
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(3)
Else
ListePatient.ListItems(i).ListSubItems.Add , , " "
End If
If requete.Fields(4) <> "" Then
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(4)
Else
ListePatient.ListItems(i).ListSubItems.Add , , " "
End If
If requete.Fields(5) <> "" Then
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(5)
Else
ListePatient.ListItems(i).ListSubItems.Add , , " "
End If
If requete.Fields(6) <> "" Then
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(6)
Else
ListePatient.ListItems(i).ListSubItems.Add , , " "
End If
If requete.Fields(7) <> "" Then
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(7)
Else
ListePatient.ListItems(i).ListSubItems.Add , , " "
End If
If requete.Fields(9) <> "" Then
ListePatient.ListItems(i).ListSubItems.Add , , requete.Fields(9)
Else
ListePatient.ListItems(i).ListSubItems.Add , , " "
End If
requete.MoveNext
Next i
ListePatient.View = lvwReport
End If
A voir également:

1 réponse

f894009 Messages postés 17209 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 20 décembre 2024 1 711
15 mai 2014 à 14:31
Bonjour,

un peu plus simple:

Private Sub Commande2_Click()
Dim Rsql
'adaptez la requete et le nom de la zone de liste
Rsql = "select * from tâches"
With Liste0
'nombre de colonnes
.ColumnCount = 10 '0 à 9 (attention 10 maxi)
'la taille des colonnes (0 pour cacher une colonne)
.ColumnWidths = "2 cm;1 cm;1 cm;2 cm;1 cm;1 cm;2 cm;1 cm;1 cm;2 cm"
.RowSourceType = "Table/Query"
.RowSource = Rsql
.Requery
End With
End Sub
0