A voir également:
- Pb en vb+datareport
- Vb - Télécharger - Langages
- Vb cable - Télécharger - Audio & Musique
- Vb editor - Télécharger - Langages
- Vb runtime - Télécharger - Divers Utilitaires
- File2hd en vb... - Forum VB / VBA
2 réponses
le problème c que vous êtes indiqué seulement le premier ligne de la liste dans la boucle et toutes les enregestrement sont affichées dans la même ligne alors que la derniere enregestrement reste affichée seule.
il faut faire un variable de conteur par example:
au demarage vous indique un variable
dim varcount
dans la procedure tu va entrer la valeur 1 pour ce variable
Private Sub DataReport_Initialize()
Dim db As Connection
varcount=1
et dans la boucle faire au lieu de section1 enter le variable varcount:
ado.MoveFirst
Do While Not ado.EOF
Liste_clt.Sections("varcount").Controls("label6").Caption = ado.Fields("code_client")
Liste_clt.Sections("varcount").Controls("label7").Caption = ado.Fields("nom_client")
Liste_clt.Sections("varcount").Controls("label8").Caption = ado.Fields("prenom_client")
Liste_clt.Sections("varcount").Controls("label9").Caption = ado.Fields("code_type")
ado.MoveNext
varcount=varcount + 1
Loop
End Sub
je ne suis pas sûr de cette methode, et bon chance
il faut faire un variable de conteur par example:
au demarage vous indique un variable
dim varcount
dans la procedure tu va entrer la valeur 1 pour ce variable
Private Sub DataReport_Initialize()
Dim db As Connection
varcount=1
et dans la boucle faire au lieu de section1 enter le variable varcount:
ado.MoveFirst
Do While Not ado.EOF
Liste_clt.Sections("varcount").Controls("label6").Caption = ado.Fields("code_client")
Liste_clt.Sections("varcount").Controls("label7").Caption = ado.Fields("nom_client")
Liste_clt.Sections("varcount").Controls("label8").Caption = ado.Fields("prenom_client")
Liste_clt.Sections("varcount").Controls("label9").Caption = ado.Fields("code_type")
ado.MoveNext
varcount=varcount + 1
Loop
End Sub
je ne suis pas sûr de cette methode, et bon chance
S'il y a une similitude avec DAO que je maîtrise mieux de ADO, je pense que ton problème vient du fait que ton recordset n'est pas rempli à l'ouverture. Il fau opérer comme suit :
1°/ - tester que ton recordset n'est pas vide si non tu auras un msg d'erreur avec les instructions qui suivent
if not MonRst.BOF then ' Un rst non vide se positionne à l'ouverture sur le 1er enregistrement d'où la propriété .BOF est égale à FALSE
2°/ - remplir ton recordset
MonRst.movelast ' c'est ce parcourt du curseur vers la fin puis vers le début qui permet de remplir le recordset
MonRst.MoveFirst
end if
Mes encouragements et mes meilleures salutations
Izeg
1°/ - tester que ton recordset n'est pas vide si non tu auras un msg d'erreur avec les instructions qui suivent
if not MonRst.BOF then ' Un rst non vide se positionne à l'ouverture sur le 1er enregistrement d'où la propriété .BOF est égale à FALSE
2°/ - remplir ton recordset
MonRst.movelast ' c'est ce parcourt du curseur vers la fin puis vers le début qui permet de remplir le recordset
MonRst.MoveFirst
end if
Mes encouragements et mes meilleures salutations
Izeg