Bonjour,
mon probl=E8me est le suivant : j'ai plus de 3000 enregistrements dans
ma base de donn=E9es et donc il devient tr=E8s long de naviguer entre les
enregistrements dans mon formulaire. Pour l'instant je navigue avec les
fl=E8ches qui font aller =E0 l'enregistrement suivant ou pr=E9c=E9dent ou
avec la molette de la souris. J'ai pens=E9 =E0 une solution qui pourrait
=EAtre une barre de navigation en plus de mon syst=E8me de fl=E8ches
(comme les barres de d=E9filement : pour aller plus vite) mais je ne
sais pas comment faire ceci.
Si quelqu'un a d'autres id=E9es elles osnt les bienvenues
Tu peux mettre en pied de formulaire une Microsoft Forms 2.0 ScrollBar (ou Microsoft Flat ScrollBar). Soit Ascenseur son nom.
Sur Ouverture: Private Sub Form_Open(Cancel As Integer) Ascenseur.Min = 1 Ascenseur.Max = Me.RecordsetClone.RecordCount End Sub
Sur chargement du formulaire: Private Sub Form_Load() Ascenseur.LargeChange = 100 ' à adapter Ascenseur.SmallChange = 20 ' à adapter End Sub
Sur Activation du formulaire: Private Sub Form_Current() ' Positionnement sur la barre avec boutons du form Me.Ascenseur.Value = Me.CurrentRecord End Sub
Sur Changement de la scrollbar Ascenseur: Private Sub Ascenseur_Change() DoCmd.GoToRecord , , acGoTo, Ascenseur.Value End Sub
Bonjour, mon problème est le suivant : j'ai plus de 3000 enregistrements dans ma base de données et donc il devient très long de naviguer entre les enregistrements dans mon formulaire. Pour l'instant je navigue avec les flèches qui font aller à l'enregistrement suivant ou précédent ou avec la molette de la souris. J'ai pensé à une solution qui pourrait être une barre de navigation en plus de mon système de flèches (comme les barres de défilement : pour aller plus vite) mais je ne sais pas comment faire ceci. Si quelqu'un a d'autres idées elles osnt les bienvenues
Merci pour votre aide
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Tu peux mettre en pied de formulaire une Microsoft Forms 2.0 ScrollBar
(ou Microsoft Flat ScrollBar). Soit Ascenseur son nom.
Sur Ouverture:
Private Sub Form_Open(Cancel As Integer)
Ascenseur.Min = 1
Ascenseur.Max = Me.RecordsetClone.RecordCount
End Sub
Sur chargement du formulaire:
Private Sub Form_Load()
Ascenseur.LargeChange = 100 ' à adapter
Ascenseur.SmallChange = 20 ' à adapter
End Sub
Sur Activation du formulaire:
Private Sub Form_Current()
' Positionnement sur la barre avec boutons du form
Me.Ascenseur.Value = Me.CurrentRecord
End Sub
Sur Changement de la scrollbar Ascenseur:
Private Sub Ascenseur_Change()
DoCmd.GoToRecord , , acGoTo, Ascenseur.Value
End Sub
Bonjour,
mon problème est le suivant : j'ai plus de 3000 enregistrements dans
ma base de données et donc il devient très long de naviguer entre les
enregistrements dans mon formulaire. Pour l'instant je navigue avec les
flèches qui font aller à l'enregistrement suivant ou précédent ou
avec la molette de la souris. J'ai pensé à une solution qui pourrait
être une barre de navigation en plus de mon système de flèches
(comme les barres de défilement : pour aller plus vite) mais je ne
sais pas comment faire ceci.
Si quelqu'un a d'autres idées elles osnt les bienvenues
Merci pour votre aide
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Tu peux mettre en pied de formulaire une Microsoft Forms 2.0 ScrollBar (ou Microsoft Flat ScrollBar). Soit Ascenseur son nom.
Sur Ouverture: Private Sub Form_Open(Cancel As Integer) Ascenseur.Min = 1 Ascenseur.Max = Me.RecordsetClone.RecordCount End Sub
Sur chargement du formulaire: Private Sub Form_Load() Ascenseur.LargeChange = 100 ' à adapter Ascenseur.SmallChange = 20 ' à adapter End Sub
Sur Activation du formulaire: Private Sub Form_Current() ' Positionnement sur la barre avec boutons du form Me.Ascenseur.Value = Me.CurrentRecord End Sub
Sur Changement de la scrollbar Ascenseur: Private Sub Ascenseur_Change() DoCmd.GoToRecord , , acGoTo, Ascenseur.Value End Sub
Bonjour, mon problème est le suivant : j'ai plus de 3000 enregistrements dans ma base de données et donc il devient très long de naviguer entre les enregistrements dans mon formulaire. Pour l'instant je navigue avec les flèches qui font aller à l'enregistrement suivant ou précédent ou avec la molette de la souris. J'ai pensé à une solution qui pourrait être une barre de navigation en plus de mon système de flèches (comme les barres de défilement : pour aller plus vite) mais je ne sais pas comment faire ceci. Si quelqu'un a d'autres idées elles osnt les bienvenues
Merci pour votre aide
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
clario
c'est cool c'est que je veux, seulement DoCmd.GoToRecord , , acGoTo, Ascenseur.Value ne marche pas :s
c'est cool c'est que je veux, seulement DoCmd.GoToRecord , , acGoTo,
Ascenseur.Value ne marche pas :s
c'est cool c'est que je veux, seulement DoCmd.GoToRecord , , acGoTo, Ascenseur.Value ne marche pas :s
Eric
re,
Une petite remarque: Pour atteindre un enregistrement dans le jeu, tapez une valeur dans la zone à cet effet (celle qui affiche le rang de l'enregistrement dans le jeu entre les boutons de navigation) et validez. Par exemple à l'ouverture du formulaire, entre les boutons de navigation (1er, dernier, suivant...) s'affiche 1. Si tu saisis 180 et valides tu seras sur le 180ème. Donc accès rapide à une position puis après soit la scrollbar (ascenseur) soit les boutons de navigation
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
re,
Une petite remarque:
Pour atteindre un enregistrement dans le jeu, tapez une valeur dans la
zone à cet effet (celle qui affiche le rang de l'enregistrement dans le
jeu entre les boutons de navigation) et validez.
Par exemple à l'ouverture du formulaire, entre les boutons de navigation
(1er, dernier, suivant...) s'affiche 1. Si tu saisis 180 et valides tu
seras sur le 180ème. Donc accès rapide à une position puis après soit la
scrollbar (ascenseur) soit les boutons de navigation
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Une petite remarque: Pour atteindre un enregistrement dans le jeu, tapez une valeur dans la zone à cet effet (celle qui affiche le rang de l'enregistrement dans le jeu entre les boutons de navigation) et validez. Par exemple à l'ouverture du formulaire, entre les boutons de navigation (1er, dernier, suivant...) s'affiche 1. Si tu saisis 180 et valides tu seras sur le 180ème. Donc accès rapide à une position puis après soit la scrollbar (ascenseur) soit les boutons de navigation
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
clario
en fait comment on lie la scrollbar aux données ?
ça c'est bon : DoCmd.GoToRecord , , acGoTo Merci beaucoup !!
en fait comment on lie la scrollbar aux données ?
ça c'est bon : DoCmd.GoToRecord , , acGoTo
Merci beaucoup !!
ça c'est bon : DoCmd.GoToRecord , , acGoTo Merci beaucoup !!
Eric
re,
La scrollbar a pour valeur Minimale 1 et pour Max le nombre d'enregistrements du Recordset voir la procédure Open du formulaire. Cette barre retourne une valeur comprise entre 1 et le max défni comme ci-dessus. Sur l'évènement Change de la ScrollBar, tu as mis : DoCmd.GoToRecord , , acGoTo, Ascenseur.Value ce qui impose à Acces d'atteindre l'enregistrement se trouvant à la position donnée par la barre Ascenseur
La procédure sur l'évènement Activation (Current) du formulaire a pour but de synchroniser la scrollbar si tu manipules les boutons de navigation (notament 1er et Dernier repositionnent la scrollbar au début ou à la fin).
En fait la scrollbar ne donne qu'une valeur qui correspond à un certain rang d'un enregistrement dans le jeu que la commande GotoRecord atteint.
Est-ce clair ?
en fait comment on lie la scrollbar aux données ?
ça c'est bon : DoCmd.GoToRecord , , acGoTo Merci beaucoup !!
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
re,
La scrollbar a pour valeur Minimale 1 et pour Max le nombre
d'enregistrements du Recordset voir la procédure Open du formulaire.
Cette barre retourne une valeur comprise entre 1 et le max défni comme
ci-dessus. Sur l'évènement Change de la ScrollBar, tu as mis :
DoCmd.GoToRecord , , acGoTo, Ascenseur.Value
ce qui impose à Acces d'atteindre l'enregistrement se trouvant à la
position donnée par la barre Ascenseur
La procédure sur l'évènement Activation (Current) du formulaire a pour
but de synchroniser la scrollbar si tu manipules les boutons de
navigation (notament 1er et Dernier repositionnent la scrollbar au début
ou à la fin).
En fait la scrollbar ne donne qu'une valeur qui correspond à un certain
rang d'un enregistrement dans le jeu que la commande GotoRecord atteint.
Est-ce clair ?
en fait comment on lie la scrollbar aux données ?
ça c'est bon : DoCmd.GoToRecord , , acGoTo
Merci beaucoup !!
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
La scrollbar a pour valeur Minimale 1 et pour Max le nombre d'enregistrements du Recordset voir la procédure Open du formulaire. Cette barre retourne une valeur comprise entre 1 et le max défni comme ci-dessus. Sur l'évènement Change de la ScrollBar, tu as mis : DoCmd.GoToRecord , , acGoTo, Ascenseur.Value ce qui impose à Acces d'atteindre l'enregistrement se trouvant à la position donnée par la barre Ascenseur
La procédure sur l'évènement Activation (Current) du formulaire a pour but de synchroniser la scrollbar si tu manipules les boutons de navigation (notament 1er et Dernier repositionnent la scrollbar au début ou à la fin).
En fait la scrollbar ne donne qu'une valeur qui correspond à un certain rang d'un enregistrement dans le jeu que la commande GotoRecord atteint.
Est-ce clair ?
en fait comment on lie la scrollbar aux données ?
ça c'est bon : DoCmd.GoToRecord , , acGoTo Merci beaucoup !!
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
clario
oui c'est beaucoup plus clair merci comment faire pour ne pas avoir de message d'erreur quand on va trop loin ?
oui c'est beaucoup plus clair merci
comment faire pour ne pas avoir de message d'erreur quand on va trop
loin ?
oui c'est beaucoup plus clair merci comment faire pour ne pas avoir de message d'erreur quand on va trop loin ?
Eric
re,
je suppose que tu as le message quand tu es allé au bout du jeu et que tu appuies sur le bouton de navigation Suivant. Modifies comme suit la procédure : Private Sub Form_Current() If Me.CurrentRecord <= Me.Ascenseur.Value Then Me.Ascenseur.Value = Me.CurrentRecord End If End Sub
Si ce n'est pas ce cas, précises quand ca survient.
oui c'est beaucoup plus clair merci comment faire pour ne pas avoir de message d'erreur quand on va trop loin ?
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
re,
je suppose que tu as le message quand tu es allé au bout du jeu et que
tu appuies sur le bouton de navigation Suivant.
Modifies comme suit la procédure :
Private Sub Form_Current()
If Me.CurrentRecord <= Me.Ascenseur.Value Then
Me.Ascenseur.Value = Me.CurrentRecord
End If
End Sub
Si ce n'est pas ce cas, précises quand ca survient.
oui c'est beaucoup plus clair merci
comment faire pour ne pas avoir de message d'erreur quand on va trop
loin ?
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
je suppose que tu as le message quand tu es allé au bout du jeu et que tu appuies sur le bouton de navigation Suivant. Modifies comme suit la procédure : Private Sub Form_Current() If Me.CurrentRecord <= Me.Ascenseur.Value Then Me.Ascenseur.Value = Me.CurrentRecord End If End Sub
Si ce n'est pas ce cas, précises quand ca survient.
oui c'est beaucoup plus clair merci comment faire pour ne pas avoir de message d'erreur quand on va trop loin ?
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Ooops !!! Erreur. Remplaces : If Me.CurrentRecord <= Me.Ascenseur.Value Then par If Me.CurrentRecord <= Me.Ascenseur.Max Then
re,
je suppose que tu as le message quand tu es allé au bout du jeu et que tu appuies sur le bouton de navigation Suivant. Modifies comme suit la procédure : Private Sub Form_Current() If Me.CurrentRecord <= Me.Ascenseur.Value Then Me.Ascenseur.Value = Me.CurrentRecord End If End Sub
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Ooops !!!
Erreur. Remplaces :
If Me.CurrentRecord <= Me.Ascenseur.Value Then
par
If Me.CurrentRecord <= Me.Ascenseur.Max Then
re,
je suppose que tu as le message quand tu es allé au bout du jeu et que
tu appuies sur le bouton de navigation Suivant.
Modifies comme suit la procédure :
Private Sub Form_Current()
If Me.CurrentRecord <= Me.Ascenseur.Value Then
Me.Ascenseur.Value = Me.CurrentRecord
End If
End Sub
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Ooops !!! Erreur. Remplaces : If Me.CurrentRecord <= Me.Ascenseur.Value Then par If Me.CurrentRecord <= Me.Ascenseur.Max Then
re,
je suppose que tu as le message quand tu es allé au bout du jeu et que tu appuies sur le bouton de navigation Suivant. Modifies comme suit la procédure : Private Sub Form_Current() If Me.CurrentRecord <= Me.Ascenseur.Value Then Me.Ascenseur.Value = Me.CurrentRecord End If End Sub
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
clario
merci beaucoup ton code est exactement ce que je cherchais à faire !!!
merci beaucoup ton code est exactement ce que je cherchais à faire !!!