OVH Cloud OVH Cloud

Combo

6 réponses
Avatar
Laurent
salut =E0 tous,

Je cr=E9e une requ=E8te SQL (contenue dans la variable=20
SQLREQ). Je place le r=E9sultat de la requ=E8te dans une combo=20
avec la commande :

Forms("Formulaire_RESULTATS").ListeResultats.RowSource =3D=20
SQLREQ

Et j'ai remarqu=E9 que souvent (mais ce n'est pas=20
syst=E9matique) que tous les enregistrement contenus dans la=20
requ=E8te ne sont pas affich=E9s dans la combo. Par exemple,=20
la requ=E8te ram=E8ne 800 enregistrements, et seuls les 50=20
premiers s'affichent.=20

Quelqu'un sait il pourquoi et comment y rem=E9dier ?

Laurent

6 réponses

Avatar
vdavid
800 lignes dans un combo... bon courage à Access (déjà que les gros
formulaires sont lents à ouvrir...) ;-)

Dans cet ordre d'idées, j'ai des listbox très chargées (j'avais laissé
tomber les combo dans ce cas là, je ne sais plus pourquoi. Peut-être pour
des pbs de chargement comme les tiens), et il est vrai que celui-ci ne se
charge pas en entier lorsque le résultat est gros. On s'en aperçoit
lorsqu'on scroll jusqu'en bas. On n'arrive pas en bas mais à la fin de ce
qui a été chargé dans un premier temps, et cela provoque le rechargement de
la suite. Il faut ainsi scroller plusieurs fois pour arriver à la fin.

Peut-être une piste ?

"Laurent" a écrit dans le message de
news:1c8f301c452d0$702cdcc0$
salut à tous,

Je crée une requète SQL (contenue dans la variable
SQLREQ). Je place le résultat de la requète dans une combo
avec la commande :

Forms("Formulaire_RESULTATS").ListeResultats.RowSource SQLREQ

Et j'ai remarqué que souvent (mais ce n'est pas
systématique) que tous les enregistrement contenus dans la
requète ne sont pas affichés dans la combo. Par exemple,
la requète ramène 800 enregistrements, et seuls les 50
premiers s'affichent.

Quelqu'un sait il pourquoi et comment y remédier ?

Laurent
Avatar
Laurent
Ouaip...
C'est exactement ce pbe que j'ai.
Je l'ai sur des combo et sur des listbox comme toi.

J'y comprend rien, car parfois, ça marche bien.



-----Message d'origine-----
800 lignes dans un combo... bon courage à Access (déjà
que les gros

formulaires sont lents à ouvrir...) ;-)

Dans cet ordre d'idées, j'ai des listbox très chargées
(j'avais laissé

tomber les combo dans ce cas là, je ne sais plus
pourquoi. Peut-être pour

des pbs de chargement comme les tiens), et il est vrai
que celui-ci ne se

charge pas en entier lorsque le résultat est gros. On
s'en aperçoit

lorsqu'on scroll jusqu'en bas. On n'arrive pas en bas
mais à la fin de ce

qui a été chargé dans un premier temps, et cela provoque
le rechargement de

la suite. Il faut ainsi scroller plusieurs fois pour
arriver à la fin.


Peut-être une piste ?

"Laurent" a écrit dans le
message de

news:1c8f301c452d0$702cdcc0$
salut à tous,

Je crée une requète SQL (contenue dans la variable
SQLREQ). Je place le résultat de la requète dans une combo
avec la commande :

Forms("Formulaire_RESULTATS").ListeResultats.RowSource =
SQLREQ

Et j'ai remarqué que souvent (mais ce n'est pas
systématique) que tous les enregistrement contenus dans la
requète ne sont pas affichés dans la combo. Par exemple,
la requète ramène 800 enregistrements, et seuls les 50
premiers s'affichent.

Quelqu'un sait il pourquoi et comment y remédier ?

Laurent


.



Avatar
3stone
Salut,

"vdavid"
800 lignes dans un combo... bon courage à Access (déjà que les gros
formulaires sont lents à ouvrir...) ;-)


Pour Access ca va, mais l'utilisateur....



Dans cet ordre d'idées, j'ai des listbox très chargées (j'avais laissé
tomber les combo dans ce cas là, je ne sais plus pourquoi. Peut-être pour
des pbs de chargement comme les tiens), et il est vrai que celui-ci ne se
charge pas en entier lorsque le résultat est gros. On s'en aperçoit
lorsqu'on scroll jusqu'en bas. On n'arrive pas en bas mais à la fin de ce
qui a été chargé dans un premier temps, et cela provoque le rechargement de
la suite. Il faut ainsi scroller plusieurs fois pour arriver à la fin.



Que l'on peut contourner avec un peu de code
sur ouverture du formualire

With Me!NomDeMaListe
.Value = .ItemData(.ListCount - 1)
.Value = Null
End With



--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------

Avatar
Laurent
Salut Pierre,

Soit j'ai pas compris, soit... (je n'ose imaginer). En
tout cas, le pbe n'est pas réglé.

Voila le code que j'ai :



Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Formulaire_RESULTATS"
DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.Maximize

Set cf = Forms!formulaire_RESULTATS
cf!BoutTrt.Enabled = True
With cf!ListeResultats
.Value = .ItemData(.ListCount - 1)
.Value = Null
End With

Forms("Formulaire_RESULTATS").ListeResultats.RowSource =
SQLREQ




Et mes enregistrements n'y sont toujours pas tous.


Laurent


-----Message d'origine-----
Salut,

"vdavid"
800 lignes dans un combo... bon courage à Access (déjà
que les gros


formulaires sont lents à ouvrir...) ;-)


Pour Access ca va, mais l'utilisateur....



Dans cet ordre d'idées, j'ai des listbox très chargées
(j'avais laissé


tomber les combo dans ce cas là, je ne sais plus
pourquoi. Peut-être pour


des pbs de chargement comme les tiens), et il est vrai
que celui-ci ne se


charge pas en entier lorsque le résultat est gros. On
s'en aperçoit


lorsqu'on scroll jusqu'en bas. On n'arrive pas en bas
mais à la fin de ce


qui a été chargé dans un premier temps, et cela
provoque le rechargement de


la suite. Il faut ainsi scroller plusieurs fois pour
arriver à la fin.




Que l'on peut contourner avec un peu de code
sur ouverture du formualire

With Me!NomDeMaListe
.Value = .ItemData(.ListCount - 1)
.Value = Null
End With



--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------






.




Avatar
3stone
Salut,

"Laurent"
Soit j'ai pas compris, soit...

C'est ca... ;-)


With cf!ListeResultats
.Value = .ItemData(.ListCount - 1)
.Value = Null
End With


oblige simplement Access à se positionner sur le
dernier item de la liste...



Forms("Formulaire_RESULTATS").ListeResultats.RowSource SQLREQ


il faut donc le mettre *après* avoir attribué le rowsource !


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------
Avatar
Laurent
YES !!
Pierre, t'es le meilleur.
Ca fait des mois que je m'emmerde avec ça.
Je me doutais que la parade était simple, mais je ne
pensais pas que ce serait à ce point.

Merci.

Laurent



-----Message d'origine-----
Salut,

"Laurent"
Soit j'ai pas compris, soit...

C'est ca... ;-)


With cf!ListeResultats
.Value = .ItemData(.ListCount - 1)
.Value = Null
End With


oblige simplement Access à se positionner sur le
dernier item de la liste...



Forms("Formulaire_RESULTATS").ListeResultats.RowSource =
SQLREQ


il faut donc le mettre *après* avoir attribué le
rowsource !



--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------




.