Lister un base de bonnée avec VSscollBar

cs_popeye59 Messages postés 29 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 10 août 2009 - 28 janv. 2003 à 10:00
cs_joflo Messages postés 156 Date d'inscription mardi 9 juillet 2002 Statut Membre Dernière intervention 23 septembre 2011 - 30 janv. 2003 à 19:29
Bon je voudrai lister ma base de donnée sur une feuille.Pour cela j ai creer une nouvelle forme et j affiche cette liste sur la forme, le pb c est que ma liste est trop grande... je ne voit donc pas la fin de celle ci sur ma form.Je supose donc qu il faut mettre un VSscollbar mais pour utiliser cela il faut que j utilise un textbox je pense, il est impossible d'utiler un VSscollbar dans une form simple.
Si j utilise un textbox, je n arrive pas a revenir a la ligne a chaque enregistrement enregistrement....
Alors comment faire...

Voici se que j ai fait en listant a partir d une form(mais la liste depassede la form):

frmListing.ScaleMode = vbCharacters
frmListing.FontSize = 8
frmListing.CurrentY = 8
frmMachine.DataTous.Recordset.MoveFirst
Do While frmMachine.DataTous.Recordset.EOF = FalseX frmMachine.DataTous.Recordset.Fields("adress_machine")Y frmMachine.DataTous.Recordset.Fields("nom partage machine")
frmListing.CurrentX = 3
frmListing.Print X;
frmListing.CurrentX = 22
frmListing.Print Y
frmMachine.DataTous.Recordset.MoveNext
frmListing.Show
Loop
frmMachine.DataTous.Recordset.MoveFirst

Pouvez vous m aider? A partir de quoi je dois partir pour faire mon listing???
Merci d avance :)

5 réponses

cs_joflo Messages postés 156 Date d'inscription mardi 9 juillet 2002 Statut Membre Dernière intervention 23 septembre 2011
28 janv. 2003 à 12:56
-------------------------------
Réponse au message :
-------------------------------

pourqoi ne pas utiliser une listview ou un datagrid pour afficher tes enregistrements
bon courage

> Bon je voudrai lister ma base de donnée sur une feuille.Pour cela j ai creer une nouvelle forme et j affiche cette liste sur la forme, le pb c est que ma liste est trop grande... je ne voit donc pas la fin de celle ci sur ma form.Je supose donc qu il faut mettre un VSscollbar mais pour utiliser cela il faut que j utilise un textbox je pense, il est impossible d'utiler un VSscollbar dans une form simple.
> Si j utilise un textbox, je n arrive pas a revenir a la ligne a chaque enregistrement enregistrement....
> Alors comment faire...
>
> Voici se que j ai fait en listant a partir d une form(mais la liste depassede la form):
>
> frmListing.ScaleMode = vbCharacters
> frmListing.FontSize = 8
> frmListing.CurrentY = 8
> frmMachine.DataTous.Recordset.MoveFirst
> Do While frmMachine.DataTous.Recordset.EOF = False> X frmMachine.DataTous.Recordset.Fields("adress_machine")Y frmMachine.DataTous.Recordset.Fields("nom partage machine")
> frmListing.CurrentX = 3
> frmListing.Print X;
> frmListing.CurrentX = 22
> frmListing.Print Y
> frmMachine.DataTous.Recordset.MoveNext
> frmListing.Show
> Loop
> frmMachine.DataTous.Recordset.MoveFirst
>
>
> Pouvez vous m aider? A partir de quoi je dois partir pour faire mon listing???
> Merci d avance :)
0
cs_popeye59 Messages postés 29 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 10 août 2009
30 janv. 2003 à 08:57
-------------------------------
Réponse au message :
-------------------------------

> Comment utiliser la list view pour afficher toute ma base de donnée dessus.j'ai essayer avec le datagrid, mais c est pas tout a fait se qu il me faut, il me faut une page vierge,la list view conviendrait mieux, mais je n arrive pas a men servir...Pouvez vous m aider svp.ca commence a devenir stressant, c est pour mon stage,on je dois rendre un petit programme a la finn et je n arrete pas de bloquer pour des conneries, merci. :)
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> pourqoi ne pas utiliser une listview ou un datagrid pour afficher tes enregistrements
> bon courage
>
> > Bon je voudrai lister ma base de donnée sur une feuille.Pour cela j ai creer une nouvelle forme et j affiche cette liste sur la forme, le pb c est que ma liste est trop grande... je ne voit donc pas la fin de celle ci sur ma form.Je supose donc qu il faut mettre un VSscollbar mais pour utiliser cela il faut que j utilise un textbox je pense, il est impossible d'utiler un VSscollbar dans une form simple.
> > Si j utilise un textbox, je n arrive pas a revenir a la ligne a chaque enregistrement enregistrement....
> > Alors comment faire...
> >
> > Voici se que j ai fait en listant a partir d une form(mais la liste depassede la form):
> >
> > frmListing.ScaleMode = vbCharacters
> > frmListing.FontSize = 8
> > frmListing.CurrentY = 8
> > frmMachine.DataTous.Recordset.MoveFirst
> > Do While frmMachine.DataTous.Recordset.EOF = False> > X frmMachine.DataTous.Recordset.Fields("adress_machine")Y frmMachine.DataTous.Recordset.Fields("nom partage machine")
> > frmListing.CurrentX = 3
> > frmListing.Print X;
> > frmListing.CurrentX = 22
> > frmListing.Print Y
> > frmMachine.DataTous.Recordset.MoveNext
> > frmListing.Show
> > Loop
> > frmMachine.DataTous.Recordset.MoveFirst
> >
> >
> > Pouvez vous m aider? A partir de quoi je dois partir pour faire mon listing???
> > Merci d avance :)
>
0
cs_joflo Messages postés 156 Date d'inscription mardi 9 juillet 2002 Statut Membre Dernière intervention 23 septembre 2011
30 janv. 2003 à 12:58
-------------------------------
Réponse au message :
-------------------------------

>
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>

voici un exemple

dans option explicit tu mets
Dim itmX (ou tu l'appelle comme tu veux) As ListItem

tu mets une listview sur ta feuille avec
Gridline à TRUE
view à lvwreport

dans le code form_load il faut créer les colonnes avec leurs dimensions

listview1.ColumnHeaders.Add , , "Nom", 1300, lvwColumnLeft
listview1.ColumnHeaders.Add , , "Prénom", 1400, lvwColumnLeft
listview1.ColumnHeaders.Add , , "adresse", 1000, lvwColumnLeft

et maintenant tu récupère les données de ta base
Set db = OpenDatabase(chemin + "\NOM_DE_TA BD.mdb")
sql1 = "select nom, " & " prenom, " & " adresse from NOM_DE_LA_TABLE order by nom"
Data1.DatabaseName = chemin + "\NOM_DE_TA BD.mdb"
Data1.RecordSource = sql1
Data1.Refresh
While Not Data1.Recordset.EOF
With Data1.Recordset
Set itmX = listview1.ListItems.Add(, , !nom)
If Not IsNull(!prenom) Then itmX.SubItems(1) = LCase(!prenom)
If Not IsNull(!code) Then itmX.SubItems(2) = !adresse
.MoveNext
End With
Wend
db.Close
Set db = Nothing

j'espère ne rien avoir oublié

dans "rechercher" de vbfrance tu as plein d'exemples sur la listview

> > Comment utiliser la list view pour afficher toute ma base de donnée dessus.j'ai essayer avec le datagrid, mais c est pas tout a fait se qu il me faut, il me faut une page vierge,la list view conviendrait mieux, mais je n arrive pas a men servir...Pouvez vous m aider svp.ca commence a devenir stressant, c est pour mon stage,on je dois rendre un petit programme a la finn et je n arrete pas de bloquer pour des conneries, merci. :)
> >
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > pourqoi ne pas utiliser une listview ou un datagrid pour afficher tes enregistrements
> > bon courage
> >
> > > Bon je voudrai lister ma base de donnée sur une feuille.Pour cela j ai creer une nouvelle forme et j affiche cette liste sur la forme, le pb c est que ma liste est trop grande... je ne voit donc pas la fin de celle ci sur ma form.Je supose donc qu il faut mettre un VSscollbar mais pour utiliser cela il faut que j utilise un textbox je pense, il est impossible d'utiler un VSscollbar dans une form simple.
> > > Si j utilise un textbox, je n arrive pas a revenir a la ligne a chaque enregistrement enregistrement....
> > > Alors comment faire...
> > >
> > > Voici se que j ai fait en listant a partir d une form(mais la liste depassede la form):
> > >
> > > frmListing.ScaleMode = vbCharacters
> > > frmListing.FontSize = 8
> > > frmListing.CurrentY = 8
> > > frmMachine.DataTous.Recordset.MoveFirst
> > > Do While frmMachine.DataTous.Recordset.EOF = False> > > X frmMachine.DataTous.Recordset.Fields("adress_machine")Y frmMachine.DataTous.Recordset.Fields("nom partage machine")
> > > frmListing.CurrentX = 3
> > > frmListing.Print X;
> > > frmListing.CurrentX = 22
> > > frmListing.Print Y
> > > frmMachine.DataTous.Recordset.MoveNext
> > > frmListing.Show
> > > Loop
> > > frmMachine.DataTous.Recordset.MoveFirst
> > >
> > >
> > > Pouvez vous m aider? A partir de quoi je dois partir pour faire mon listing???
> > > Merci d avance :)
> >
>
0
cs_popeye59 Messages postés 29 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 10 août 2009
30 janv. 2003 à 16:54
-------------------------------
Réponse au message :
-------------------------------

>
> Je te remerci bien, ca ma bien aidé le code que tu ma donné...

> Sinon,je me permet de te poser une autre question,tu ne sais pas comment creer des tabulations lorsque tu ecris dans un fichier text a partir de VB?
Je veux faire cela afin que se soit plus clair et que toute mes données soit afficher en colonne.Car apres avoir afficher dans un listview il fallait aussi que je fasse un sauvegarde dans un fichier texte.Et je me vois mal lire toute les données (400 enregistrements donc 400 lignes) si celle ci ne sont pas mis aux clair.

En tout cas encore un grand merci pour ton aide
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> >
> >
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
>
>
> voici un exemple
>
> dans option explicit tu mets
> Dim itmX (ou tu l'appelle comme tu veux) As ListItem
>
> tu mets une listview sur ta feuille avec
> Gridline à TRUE
> view à lvwreport
>
> dans le code form_load il faut créer les colonnes avec leurs dimensions
>
> listview1.ColumnHeaders.Add , , "Nom", 1300, lvwColumnLeft
> listview1.ColumnHeaders.Add , , "Prénom", 1400, lvwColumnLeft
> listview1.ColumnHeaders.Add , , "adresse", 1000, lvwColumnLeft
>
> et maintenant tu récupère les données de ta base
> Set db = OpenDatabase(chemin + "\NOM_DE_TA BD.mdb")
> sql1 = "select nom, " & " prenom, " & " adresse from NOM_DE_LA_TABLE order by nom"
> Data1.DatabaseName = chemin + "\NOM_DE_TA BD.mdb"
> Data1.RecordSource = sql1
> Data1.Refresh
> While Not Data1.Recordset.EOF
> With Data1.Recordset
> Set itmX = listview1.ListItems.Add(, , !nom)
> If Not IsNull(!prenom) Then itmX.SubItems(1) = LCase(!prenom)
> If Not IsNull(!code) Then itmX.SubItems(2) = !adresse
> .MoveNext
> End With
> Wend
> db.Close
> Set db = Nothing
>
>
> j'espère ne rien avoir oublié
>
> dans "rechercher" de vbfrance tu as plein d'exemples sur la listview
>
>
>
>
> > > Comment utiliser la list view pour afficher toute ma base de donnée dessus.j'ai essayer avec le datagrid, mais c est pas tout a fait se qu il me faut, il me faut une page vierge,la list view conviendrait mieux, mais je n arrive pas a men servir...Pouvez vous m aider svp.ca commence a devenir stressant, c est pour mon stage,on je dois rendre un petit programme a la finn et je n arrete pas de bloquer pour des conneries, merci. :)
> > >
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > pourqoi ne pas utiliser une listview ou un datagrid pour afficher tes enregistrements
> > > bon courage
> > >
> > > > Bon je voudrai lister ma base de donnée sur une feuille.Pour cela j ai creer une nouvelle forme et j affiche cette liste sur la forme, le pb c est que ma liste est trop grande... je ne voit donc pas la fin de celle ci sur ma form.Je supose donc qu il faut mettre un VSscollbar mais pour utiliser cela il faut que j utilise un textbox je pense, il est impossible d'utiler un VSscollbar dans une form simple.
> > > > Si j utilise un textbox, je n arrive pas a revenir a la ligne a chaque enregistrement enregistrement....
> > > > Alors comment faire...
> > > >
> > > > Voici se que j ai fait en listant a partir d une form(mais la liste depassede la form):
> > > >
> > > > frmListing.ScaleMode = vbCharacters
> > > > frmListing.FontSize = 8
> > > > frmListing.CurrentY = 8
> > > > frmMachine.DataTous.Recordset.MoveFirst
> > > > Do While frmMachine.DataTous.Recordset.EOF = False> > > > X frmMachine.DataTous.Recordset.Fields("adress_machine")Y frmMachine.DataTous.Recordset.Fields("nom partage machine")
> > > > frmListing.CurrentX = 3
> > > > frmListing.Print X;
> > > > frmListing.CurrentX = 22
> > > > frmListing.Print Y
> > > > frmMachine.DataTous.Recordset.MoveNext
> > > > frmListing.Show
> > > > Loop
> > > > frmMachine.DataTous.Recordset.MoveFirst
> > > >
> > > >
> > > > Pouvez vous m aider? A partir de quoi je dois partir pour faire mon listing???
> > > > Merci d avance :)
> > >
> >
>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_joflo Messages postés 156 Date d'inscription mardi 9 juillet 2002 Statut Membre Dernière intervention 23 septembre 2011
30 janv. 2003 à 19:29
-------------------------------
Réponse au message :
-------------------------------

>
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>

content que cela te serve

pour les tabulations je ne sais pas n'ayant jamais utilisé cela
peut etre ?? en positionant le mot suivant avec tab()
ex: tab(100):nom tab(150):prenom peut etre?

> >
> > Je te remerci bien, ca ma bien aidé le code que tu ma donné...
>
> > Sinon,je me permet de te poser une autre question,tu ne sais pas comment creer des tabulations lorsque tu ecris dans un fichier text a partir de VB?
> Je veux faire cela afin que se soit plus clair et que toute mes données soit afficher en colonne.Car apres avoir afficher dans un listview il fallait aussi que je fasse un sauvegarde dans un fichier texte.Et je me vois mal lire toute les données (400 enregistrements donc 400 lignes) si celle ci ne sont pas mis aux clair.
>
> En tout cas encore un grand merci pour ton aide
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > >
> > >
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> >
> >
> > voici un exemple
> >
> > dans option explicit tu mets
> > Dim itmX (ou tu l'appelle comme tu veux) As ListItem
> >
> > tu mets une listview sur ta feuille avec
> > Gridline à TRUE
> > view à lvwreport
> >
> > dans le code form_load il faut créer les colonnes avec leurs dimensions
> >
> > listview1.ColumnHeaders.Add , , "Nom", 1300, lvwColumnLeft
> > listview1.ColumnHeaders.Add , , "Prénom", 1400, lvwColumnLeft
> > listview1.ColumnHeaders.Add , , "adresse", 1000, lvwColumnLeft
> >
> > et maintenant tu récupère les données de ta base
> > Set db = OpenDatabase(chemin + "\NOM_DE_TA BD.mdb")
> > sql1 = "select nom, " & " prenom, " & " adresse from NOM_DE_LA_TABLE order by nom"
> > Data1.DatabaseName = chemin + "\NOM_DE_TA BD.mdb"
> > Data1.RecordSource = sql1
> > Data1.Refresh
> > While Not Data1.Recordset.EOF
> > With Data1.Recordset
> > Set itmX = listview1.ListItems.Add(, , !nom)
> > If Not IsNull(!prenom) Then itmX.SubItems(1) = LCase(!prenom)
> > If Not IsNull(!code) Then itmX.SubItems(2) = !adresse
> > .MoveNext
> > End With
> > Wend
> > db.Close
> > Set db = Nothing
> >
> >
> > j'espère ne rien avoir oublié
> >
> > dans "rechercher" de vbfrance tu as plein d'exemples sur la listview
> >
> >
> >
> >
> > > > Comment utiliser la list view pour afficher toute ma base de donnée dessus.j'ai essayer avec le datagrid, mais c est pas tout a fait se qu il me faut, il me faut une page vierge,la list view conviendrait mieux, mais je n arrive pas a men servir...Pouvez vous m aider svp.ca commence a devenir stressant, c est pour mon stage,on je dois rendre un petit programme a la finn et je n arrete pas de bloquer pour des conneries, merci. :)
> > > >
> > > >
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > pourqoi ne pas utiliser une listview ou un datagrid pour afficher tes enregistrements
> > > > bon courage
> > > >
> > > > > Bon je voudrai lister ma base de donnée sur une feuille.Pour cela j ai creer une nouvelle forme et j affiche cette liste sur la forme, le pb c est que ma liste est trop grande... je ne voit donc pas la fin de celle ci sur ma form.Je supose donc qu il faut mettre un VSscollbar mais pour utiliser cela il faut que j utilise un textbox je pense, il est impossible d'utiler un VSscollbar dans une form simple.
> > > > > Si j utilise un textbox, je n arrive pas a revenir a la ligne a chaque enregistrement enregistrement....
> > > > > Alors comment faire...
> > > > >
> > > > > Voici se que j ai fait en listant a partir d une form(mais la liste depassede la form):
> > > > >
> > > > > frmListing.ScaleMode = vbCharacters
> > > > > frmListing.FontSize = 8
> > > > > frmListing.CurrentY = 8
> > > > > frmMachine.DataTous.Recordset.MoveFirst
> > > > > Do While frmMachine.DataTous.Recordset.EOF = False> > > > > X frmMachine.DataTous.Recordset.Fields("adress_machine")Y frmMachine.DataTous.Recordset.Fields("nom partage machine")
> > > > > frmListing.CurrentX = 3
> > > > > frmListing.Print X;
> > > > > frmListing.CurrentX = 22
> > > > > frmListing.Print Y
> > > > > frmMachine.DataTous.Recordset.MoveNext
> > > > > frmListing.Show
> > > > > Loop
> > > > > frmMachine.DataTous.Recordset.MoveFirst
> > > > >
> > > > >
> > > > > Pouvez vous m aider? A partir de quoi je dois partir pour faire mon listing???
> > > > > Merci d avance :)
> > > >
> > >
> >
>
0
Rejoignez-nous