Recordset

mell01 Messages postés 72 Date d'inscription lundi 6 juin 2005 Statut Membre Dernière intervention 15 mai 2006 - 14 juin 2005 à 15:35
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 - 14 juin 2005 à 16:06
bjr,
un truc bizar, enfin surement un truc que j ai pas vu...
Voila j ai un recordset qui a un count de 4 et quand je les resultats mets dans ma combo il ne trouve que le premier.
Si qql a une idée...svp
merci d avance
Voici le code:
Public Sub fournisseur(frm As Form)


Dim strSQL As String
Dim cmd As New ADODB.Command
Dim rs As New ADODB.Recordset
On Error Resume Next
cmd.ActiveConnection = CNN
cmd.CommandType = adCmdText

rs.CursorLocation = adUseClient
rs.CursorType = adOpenStatic '3
rs.LockType = adLockReadOnly '1

strSQL = "SELECT fournisseur.nom FROM fournisseur"

cmd.CommandText = strSQL
rs.Open cmd


'***********************************************
If Err.Number <> 0 Then
MsgBox cmd.CommandText & Err.Description '*
End If '*
'***********************************************
nb = rs.RecordCount
If Not rs.EOF Then
rs.MoveFirst
For i = 0 To nb - 1
frm.ComboF.AddItem (rs(i))
rs.MoveNext
Next
End If


rs.Close
Set rs = Nothing
Set cmd = Nothing

End Sub

2 réponses

tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
14 juin 2005 à 16:03
Vérifie si dans l'option Style de ton Combo, tu as bien

0 - Dropdown Combo

TBBUIM
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 18
14 juin 2005 à 16:06
Salut,

Si tu veux avoir le nombre réel d'enregs du recordset, fais :
rs.movelast
nb = rs.RecordCount
rs.movefirst

car autrement ce que retourne le recordcount est souvent bizarre.

D'autre part, dans rs(i) i représente l'index d'un champ et dans ton code, tu prends le nb d'enregistrements (donc de lignes)

J'aurais plutôt fais comme ça, sans recordcount :

Do while Not rs.EOF
frm.ComboF.AddItem rs!tonchamp
rs.MoveNext
Loop

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0