1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
Private Sub AfficherListe()
Dim RstProt As New ADODB.Recordset
Dim Rstnorech As New ADODB.Recordset
Dim Valeur As String
Dim Ligne As MSComctlLib.ListItem
Dim CollectionLigne As MSComctlLib.ListItems
Dim nbrecord As Integer
Dim req As String
Dim rep As String
Dim novalide As Integer
Me!BarreStatutProtections.Panels(1).text = "Recherche en cours..."
'Requete
req = Requete SQL
ValidateRect ListViewProtection.hwnd, 0& 'On inhibe le rafraichissement écran
nbrecord = 0
With RstProt
.Open req, SqlSrvDatabase, adOpenKeyset, adLockReadOnly
Set CollectionLigne = Me!ListViewProtection.ListItems
CollectionLigne.Clear
Me!BarreStatutProtections.Panels(1).text = " Chargement de la liste..."
'Chargement de la ListView à partir de la requete Lignelic
While Not .EOF
Valeur = NoZ(!champ1): Set Ligne = CollectionLigne.Add(, , Valeur)
Ligne.Tag = Valeur
Valeur = NoZ(!Champ2): Ligne.SubItems(1) = Valeur
Valeur = NoZ(!champ3): Ligne.SubItems(2) = Valeur
If Valeur = "Expiré" Then
Ligne.ListSubItems(2).ForeColor = vbRed
Else
If Valeur = "En attente" Then
Ligne.ListSubItems(2).ForeColor = vbBlue
End If
End If
Valeur = NoZ(!champ4): Ligne.SubItems(3) = Valeur
Valeur = NoZ(!champ5): Ligne.SubItems(4) = Valeur
...
Valeur = NoZ(!champ22): Ligne.SubItems(21) = Valeur
nbrecord = nbrecord + 1
.MoveNext
Wend
.Close
End With
Set RstProt = Nothing
Set CollectionLigne = Nothing
Set Ligne = Nothing
InvalidateRect ListViewProtection.hwnd, 0&, 0& 'On active le rafraichissement écran
Me!BarreStatutProtections.Panels(1).text = nbrecord & " élément(s) listé(s)" |
Partager