Zone de liste modifiable

Kingrise Messages postés 4 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 octobre 2008 - 2 oct. 2008 à 10:35
Kingrise Messages postés 4 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 octobre 2008 - 2 oct. 2008 à 11:28
Bonjour,

Ma question est simple et j'imagine que la solution doit l'être tout autant... Mais je suis débutant
en VB...

J'ai une zone de liste modifiable et j'aimerais que lorsque j'ajoute un nouveau contact dans cette
zone de liste, le formulaire affiche un nouvel enregistrement à partir de l'événemet NotInList()
Voici le code que j'ai actuellement :

Private Sub Modifiable33_NotInList(NewData As String, Response As Integer)
On Error Resume Next

Dim valeurRetour As Integer
Dim maBase As Database
Dim strNom_a_ajouter As String
strNom_a_ajouter = NewData
Set maBase = CurrentDb()

valeurRetour = MsgBox("Voulez-vous créer ce nouveau contact :" & strNom_a_ajouter, vbOKCancel)

If (valeurRetour = 1) Then
Dim jeuxdenro As Recordset
Dim strCode_Nom As Integer
Dim Sqlstr As String

Sqlstr = "SELECT id_contact, nom FROM tbl_contact;"

Response = acDataErrAdded

Set jeuxdenro = maBase.OpenRecordset(Sqlstr, dbOpenDynaset)
With jeuxdenro

.AddNew
!nom = strNom_a_ajouter
.Update
End With

Else
'Annulation par l'utilisateur
Modifiable33.Value = Modifiable33.OldValue
Response = acDataErrContinue
End If

End Sub

Merci pour vos réponses éclairées....

6 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
2 oct. 2008 à 10:52
Salut,
Désolé mais ta question est peu être simple mais elle est surtout inexistante.

@+: Ju£i€n
Pensez: Réponse acceptée
0
Kingrise Messages postés 4 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 octobre 2008
2 oct. 2008 à 10:59
Que veux-tu dire par là ?
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
2 oct. 2008 à 11:05
Re,
Bah je veux dire par là que y a pas de question....

Tu as juste exposé un code (d'ailleurs fonctionnes t il).

si " le formulaire affiche un nouvel enregistrement à partir de l'événemet NotInList()" est la question

Alors je te demanderai l'afficher oui mais OU?

Une solution précise repose sur une question clairement exposée.

@+: Ju£i€n
Pensez: Réponse acceptée
0
Kingrise Messages postés 4 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 octobre 2008
2 oct. 2008 à 11:11
Ok, je reformule la question autrement..

J'ai un formulaire contact avec une zone de liste qui reprend tous les contacts.
Cette zone de liste est synchronisée avec le formulaire.

Lorsque je choisi un élément de la liste, le formulaire affiche toutes les données
relatives au contact sélectionné.

Maintenant, lorsque j'ajoute un élément à la liste, c'est-à-dire un nouveau contact,
un message me demande si je veux ajouter ce contact à la liste. Si la réponse est oui, le code vb ajoute à la
table le nouvel enregistrement.

Mais ensuite affiche le premier enregistrement (selon le tri)... mais je souhaiterais qu'il affiche l'enregistrement
nouvellement créé.

Est-ce que ma question est mieux posée ainsi ?
0

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

Posez votre question
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
2 oct. 2008 à 11:22
Salut,
Oki, j'avais pas compris.

Essaie peu etre de déplacer le REcordset jusqu a l'enregistrement nouvellement créé.

@+: Ju£i€n
Pensez: Réponse acceptée
0
Kingrise Messages postés 4 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 octobre 2008
2 oct. 2008 à 11:28
Oui, c'est ce que j'ai essayé avec DoCmd.GotoRecord , , acNewRec.

Mais dès lors, le bouton "Voulez-vous créer un nouveau contact...." apparaît continuellement et ajoute autant de nouveau contact à ma table... sauf si je fais cancel.  Mais le formulaire affiche par la suite le premier enregistrement (selon l'ordre de tri)...

Merci
0
Rejoignez-nous