Enregistrement suivant

Fermé
matjonq - 3 févr. 2010 à 07:18
 matjonq - 3 févr. 2010 à 14:17
Bonjour,

J'ai un formulaire access basé sur une table.
Je souhaite naviguer entre les enregistrements et j'ai donc créé un bouton "enregistrement suivant" (bouton assistant).
Le problème c'est que lorsque j'arrive à la fin de ma table, il ne "détecte" pas qu'il n'y a plus d'enregistrement (fin de ma table) et il me crée des lignes vides (nouveaux enregistrements).

Voici mon code pour le bouton :

Private Sub C_enreg_suiv_Click()


On Error GoTo Err_C_enreg_suiv_Click


DoCmd.GoToRecord , , acNext

NewRecord
Exit_C_enreg_suiv_Click:



Exit Sub

Err_C_enreg_suiv_Click:
msgbox err.Description
Resume Exit_C_enreg_suiv_Click

End Sub


Pouvez-vous m'aider ?
Merci d'avance...

11 réponses

blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 févr. 2010 à 08:38
Salut,

précise que c'est avec ACCESS, comme ça on perd moins de temps à chercher...

C'est quoi le NewRecord dans ton code ?

Es-tu sûr(e) qu'il te crée des lignes vides dans ta table ?
0
Bonjour,

En effet, il s'agit bien d'Access.
J'ai supprimé le "newrecord" qui n'avait rien à faire là.
Par contre ça me crée toujours des lignes vierges en fin de table à chaque fois que je clique sur le bouton "enregistrement suivant" et qu'il est placé sur le dernier.

Voyez-vous d'où ça vient ?

Merci d'avance.
0
blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 févr. 2010 à 10:49
Les lignes sont-elles crées dans la table ?
Ca m'étonnerait car on ne fait pas un 'acnew'.

Sinon, tu modifies ton formulaire pour interdire l'ajout d'enregistrement.

Propriétés du formulaire/Onglet données/Ajout autorisé...
0
Oui, les lignes sont créées directement dans la table.
J'essaye tout de suite ta solution
0
blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 févr. 2010 à 11:17
Et quelles tête ont-elles ?
Quelle clé primaire est générée ? Quelles données dans les champs ?
0
Alors, le fait de bloquer l'ajout d'enregistrement dans les propriétés fonctionne bien. Il me met le message "Impossible d'atteindre l'enregistrement suivant" lorsqu'il est en fin de table.

Par contre, je ne peux plus en ajouter du tout. A la base mon formulaire doit qu'en même servir à créer, modifier ou supprimer des enregistrements...

As-tu une autre solution ?

Merci d'avance
0

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

Posez votre question
blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 févr. 2010 à 11:22
Je viens de faire le test avec un bouton qui ne contient que la ligne DoCmd.GoToRecord , , acNext

Lorsque j'arrive au bout des enr., j'ai le message classique 2105, impossible d'atteindre l'enr. spéciifé, ce qui est normal.

Donc je ne vois pas où peut être le souci, et surout que met-il dans les nouvelles lignes créées ?
0
Pour les lignes vierges, il ne renseigne que le numauto (identifiant de ma table) incrémenté de 1 à chaque fois.

Je vais essayer de recréer mon bouton suivant, pour voir.
0
Je viens de recréer mon bouton suivant (à l'aide de l'assistant).

Toujours le même problème. Quand je suis positionnée sur le dernier enregistrement et que je clique sur le bouton, il m'ajoute de nouveaux enregistrements "à vide"...
0
blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 févr. 2010 à 11:37
Si tu as une clé primaire dans ta table, ça ne peut pas marcher, car un clé primaire doit être unique et non vide...

Il y a autre chose caché quelque part...
0
Justement, ma clé primaire est mon numauto et donc ça ne lui pose pas de pb... car il m'incrémente mon numauto de 1 à chaque fois que je clique sur suivant...
0
blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 févr. 2010 à 12:10
Ok pour le numauto.

Supprime tout le code du bouton et ne garde que le docmd...

As-tu du code ailleurs sur ton formulaire (ouverture, chargement...) ?
0
Toujours pareil.

J'ai effectivement de la programmation sur mon formulaire (sur activation) mais rien dans cette programmation qui pourrait influencer l'ajout d'enregistrement :-(
0
blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 févr. 2010 à 13:13
je sèche...

ta base est grosse ? elle contient des infos sensibles ?

si non, tu peux la mettre sur cjoint ou dl.free.fr ?
0
Je suis bien embêtée...
Oui, elle est grosse et contient des données sensibles...
:'(
0
blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 févr. 2010 à 13:49
Tu peux pas la vider et la compacter ?
0
J'essaye de regarder... Je te tiens au courant !

Merci en tt cas
0