Bonjour,
J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un
exemple de code pour ajouter un élement à un controle de type liste
déroulante.
Je suis en Access 2000
J'ai bien crée un controle zone de liste modifiable avec :
Limiter à liste Oui.
Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée dans
son environnement ,je suis preneur
Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer)
If AjoutValeur(NouvelleValeur) Then
Suite = acDataErrAdded
Else
Suite = acDataErrContinue
End If
End Sub
Private Function AjoutValeur(NouvelleValeur As String) As Boolean
On Error Resume Next
AjoutValeur = False
If Me.ActiveControl.RowSourceType <> "Value List" Then
Exit Function
End If
If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _
"Voulez-vous l'ajouter ?", vbYesNo, NouvelleValeur & ": Valeur
inconnue") _
= vbYes Then
Me.ActiveControl.RowSource = Me.ActiveControl.RowSource & ";" _
& NouvelleValeur
AjoutValeur = True
Else
Me.ActiveControl.Undo
End If
End Function
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Le Méruvien
bonjour Eric, je fait la procedure suivante, et ça marche bien * AJOUT DANS UNE LISTE DEROULANTE **
Private Sub service_NotInList(NewData As String, Response As Integer)
Dim dbs As Database
Dim rcst As DAO.Recordset
If MsgBox("Voulez-vous ajouter ce nom?", vbOKCancel) = vbOK Then
Response = acDataErrAdded
Set dbs = CurrentDb
Set rcst = dbs.OpenRecordset("nom de la table ou est la liste", dbOpenDynaset)
On Error Resume Next
rcst.AddNew
rcst.Fields![nom du champ dans la table] = NewData
rcst.Update
rcst.Close
Set dbs = Nothing
Else
Response = acDataErrContinue
Me![nom du champ liste D dans le forms].Undo
End If
End Sub
roger
"Eric RENAUD" a écrit dans le message de news: #
Bonjour, J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un exemple de code pour ajouter un élement à un controle de type liste déroulante. Je suis en Access 2000 J'ai bien crée un controle zone de liste modifiable avec : Limiter à liste Oui. Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée dans
son environnement ,je suis preneur Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer) If AjoutValeur(NouvelleValeur) Then Suite = acDataErrAdded Else Suite = acDataErrContinue End If End Sub Private Function AjoutValeur(NouvelleValeur As String) As Boolean On Error Resume Next AjoutValeur = False If Me.ActiveControl.RowSourceType <> "Value List" Then Exit Function End If If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _ "Voulez-vous l'ajouter ?", vbYesNo, NouvelleValeur & ": Valeur
inconnue") _ = vbYes Then Me.ActiveControl.RowSource = Me.ActiveControl.RowSource & ";" _ & NouvelleValeur AjoutValeur = True Else Me.ActiveControl.Undo End If End Function
bonjour Eric, je fait la procedure suivante, et ça marche bien
* AJOUT DANS UNE LISTE DEROULANTE **
Private Sub service_NotInList(NewData As String, Response As Integer)
Dim dbs As Database
Dim rcst As DAO.Recordset
If MsgBox("Voulez-vous ajouter ce nom?", vbOKCancel) = vbOK Then
Response = acDataErrAdded
Set dbs = CurrentDb
Set rcst = dbs.OpenRecordset("nom de la table ou est la liste",
dbOpenDynaset)
On Error Resume Next
rcst.AddNew
rcst.Fields![nom du champ dans la table] = NewData
rcst.Update
rcst.Close
Set dbs = Nothing
Else
Response = acDataErrContinue
Me![nom du champ liste D dans le forms].Undo
End If
End Sub
roger
"Eric RENAUD" <erenaud@normandet.fr> a écrit dans le message de news:
#5S7Uxs9DHA.2472@TK2MSFTNGP10.phx.gbl...
Bonjour,
J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un
exemple de code pour ajouter un élement à un controle de type liste
déroulante.
Je suis en Access 2000
J'ai bien crée un controle zone de liste modifiable avec :
Limiter à liste Oui.
Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée
dans
son environnement ,je suis preneur
Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer)
If AjoutValeur(NouvelleValeur) Then
Suite = acDataErrAdded
Else
Suite = acDataErrContinue
End If
End Sub
Private Function AjoutValeur(NouvelleValeur As String) As Boolean
On Error Resume Next
AjoutValeur = False
If Me.ActiveControl.RowSourceType <> "Value List" Then
Exit Function
End If
If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _
"Voulez-vous l'ajouter ?", vbYesNo, NouvelleValeur & ":
Valeur
inconnue") _
= vbYes Then
Me.ActiveControl.RowSource = Me.ActiveControl.RowSource & ";" _
& NouvelleValeur
AjoutValeur = True
Else
Me.ActiveControl.Undo
End If
End Function
bonjour Eric, je fait la procedure suivante, et ça marche bien * AJOUT DANS UNE LISTE DEROULANTE **
Private Sub service_NotInList(NewData As String, Response As Integer)
Dim dbs As Database
Dim rcst As DAO.Recordset
If MsgBox("Voulez-vous ajouter ce nom?", vbOKCancel) = vbOK Then
Response = acDataErrAdded
Set dbs = CurrentDb
Set rcst = dbs.OpenRecordset("nom de la table ou est la liste", dbOpenDynaset)
On Error Resume Next
rcst.AddNew
rcst.Fields![nom du champ dans la table] = NewData
rcst.Update
rcst.Close
Set dbs = Nothing
Else
Response = acDataErrContinue
Me![nom du champ liste D dans le forms].Undo
End If
End Sub
roger
"Eric RENAUD" a écrit dans le message de news: #
Bonjour, J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un exemple de code pour ajouter un élement à un controle de type liste déroulante. Je suis en Access 2000 J'ai bien crée un controle zone de liste modifiable avec : Limiter à liste Oui. Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée dans
son environnement ,je suis preneur Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer) If AjoutValeur(NouvelleValeur) Then Suite = acDataErrAdded Else Suite = acDataErrContinue End If End Sub Private Function AjoutValeur(NouvelleValeur As String) As Boolean On Error Resume Next AjoutValeur = False If Me.ActiveControl.RowSourceType <> "Value List" Then Exit Function End If If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _ "Voulez-vous l'ajouter ?", vbYesNo, NouvelleValeur & ": Valeur
inconnue") _ = vbYes Then Me.ActiveControl.RowSource = Me.ActiveControl.RowSource & ";" _ & NouvelleValeur AjoutValeur = True Else Me.ActiveControl.Undo End If End Function
Eric RENAUD
Merci C'est vrai que ca marche bien mais le nouvel item est ajouté 2 fois "Le Méruvien" a écrit dans le message de news: 403488ff$0$28143$
bonjour Eric, je fait la procedure suivante, et ça marche bien * AJOUT DANS UNE LISTE DEROULANTE **
Private Sub service_NotInList(NewData As String, Response As Integer)
Dim dbs As Database
Dim rcst As DAO.Recordset
If MsgBox("Voulez-vous ajouter ce nom?", vbOKCancel) = vbOK Then
Response = acDataErrAdded
Set dbs = CurrentDb
Set rcst = dbs.OpenRecordset("nom de la table ou est la liste", dbOpenDynaset)
On Error Resume Next
rcst.AddNew
rcst.Fields![nom du champ dans la table] = NewData
rcst.Update
rcst.Close
Set dbs = Nothing
Else
Response = acDataErrContinue
Me![nom du champ liste D dans le forms].Undo
End If
End Sub
roger
"Eric RENAUD" a écrit dans le message de news: #
Bonjour, J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un exemple de code pour ajouter un élement à un controle de type liste déroulante. Je suis en Access 2000 J'ai bien crée un controle zone de liste modifiable avec : Limiter à liste Oui. Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée dans
son environnement ,je suis preneur Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer) If AjoutValeur(NouvelleValeur) Then Suite = acDataErrAdded Else Suite = acDataErrContinue End If End Sub Private Function AjoutValeur(NouvelleValeur As String) As Boolean On Error Resume Next AjoutValeur = False If Me.ActiveControl.RowSourceType <> "Value List" Then Exit Function End If If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _ "Voulez-vous l'ajouter ?", vbYesNo, NouvelleValeur & ": Valeur
inconnue") _ = vbYes Then Me.ActiveControl.RowSource = Me.ActiveControl.RowSource & ";" _ & NouvelleValeur AjoutValeur = True Else Me.ActiveControl.Undo End If End Function
Merci
C'est vrai que ca marche bien mais le nouvel item est ajouté 2 fois
"Le Méruvien" <Rvdb.roger@free.fr> a écrit dans le message de news:
403488ff$0$28143$636a15ce@news.free.fr...
bonjour Eric, je fait la procedure suivante, et ça marche bien
* AJOUT DANS UNE LISTE DEROULANTE **
Private Sub service_NotInList(NewData As String, Response As Integer)
Dim dbs As Database
Dim rcst As DAO.Recordset
If MsgBox("Voulez-vous ajouter ce nom?", vbOKCancel) = vbOK Then
Response = acDataErrAdded
Set dbs = CurrentDb
Set rcst = dbs.OpenRecordset("nom de la table ou est la liste",
dbOpenDynaset)
On Error Resume Next
rcst.AddNew
rcst.Fields![nom du champ dans la table] = NewData
rcst.Update
rcst.Close
Set dbs = Nothing
Else
Response = acDataErrContinue
Me![nom du champ liste D dans le forms].Undo
End If
End Sub
roger
"Eric RENAUD" <erenaud@normandet.fr> a écrit dans le message de news:
#5S7Uxs9DHA.2472@TK2MSFTNGP10.phx.gbl...
Bonjour,
J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un
exemple de code pour ajouter un élement à un controle de type liste
déroulante.
Je suis en Access 2000
J'ai bien crée un controle zone de liste modifiable avec :
Limiter à liste Oui.
Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée
dans
son environnement ,je suis preneur
Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer)
If AjoutValeur(NouvelleValeur) Then
Suite = acDataErrAdded
Else
Suite = acDataErrContinue
End If
End Sub
Private Function AjoutValeur(NouvelleValeur As String) As Boolean
On Error Resume Next
AjoutValeur = False
If Me.ActiveControl.RowSourceType <> "Value List" Then
Exit Function
End If
If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _
"Voulez-vous l'ajouter ?", vbYesNo, NouvelleValeur & ":
Valeur
inconnue") _
= vbYes Then
Me.ActiveControl.RowSource = Me.ActiveControl.RowSource & ";" _
& NouvelleValeur
AjoutValeur = True
Else
Me.ActiveControl.Undo
End If
End Function
Merci C'est vrai que ca marche bien mais le nouvel item est ajouté 2 fois "Le Méruvien" a écrit dans le message de news: 403488ff$0$28143$
bonjour Eric, je fait la procedure suivante, et ça marche bien * AJOUT DANS UNE LISTE DEROULANTE **
Private Sub service_NotInList(NewData As String, Response As Integer)
Dim dbs As Database
Dim rcst As DAO.Recordset
If MsgBox("Voulez-vous ajouter ce nom?", vbOKCancel) = vbOK Then
Response = acDataErrAdded
Set dbs = CurrentDb
Set rcst = dbs.OpenRecordset("nom de la table ou est la liste", dbOpenDynaset)
On Error Resume Next
rcst.AddNew
rcst.Fields![nom du champ dans la table] = NewData
rcst.Update
rcst.Close
Set dbs = Nothing
Else
Response = acDataErrContinue
Me![nom du champ liste D dans le forms].Undo
End If
End Sub
roger
"Eric RENAUD" a écrit dans le message de news: #
Bonjour, J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un exemple de code pour ajouter un élement à un controle de type liste déroulante. Je suis en Access 2000 J'ai bien crée un controle zone de liste modifiable avec : Limiter à liste Oui. Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée dans
son environnement ,je suis preneur Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer) If AjoutValeur(NouvelleValeur) Then Suite = acDataErrAdded Else Suite = acDataErrContinue End If End Sub Private Function AjoutValeur(NouvelleValeur As String) As Boolean On Error Resume Next AjoutValeur = False If Me.ActiveControl.RowSourceType <> "Value List" Then Exit Function End If If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _ "Voulez-vous l'ajouter ?", vbYesNo, NouvelleValeur & ": Valeur
inconnue") _ = vbYes Then Me.ActiveControl.RowSource = Me.ActiveControl.RowSource & ";" _ & NouvelleValeur AjoutValeur = True Else Me.ActiveControl.Undo End If End Function
Eric
Bonjour Eric, A première vue, Il faut que tu remplaces dans l'instruction: If Me.ActiveControl.RowSourceType <> "Value List" Then
la chaine "Value List" par "Liste valeurs" et je pense que tu n'auras plus de problème.
Un autre Eric
-----Message d'origine----- Bonjour, J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un
exemple de code pour ajouter un élement à un controle de type liste
déroulante. Je suis en Access 2000 J'ai bien crée un controle zone de liste modifiable avec : Limiter à liste Oui. Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée dans
son environnement ,je suis preneur Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer)
If AjoutValeur(NouvelleValeur) Then Suite = acDataErrAdded Else Suite = acDataErrContinue End If End Sub Private Function AjoutValeur(NouvelleValeur As String) As Boolean
On Error Resume Next AjoutValeur = False If Me.ActiveControl.RowSourceType <> "Value List" Then Exit Function End If If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _
AjoutValeur = True Else Me.ActiveControl.Undo End If End Function
.
Bonjour Eric,
A première vue,
Il faut que tu remplaces dans l'instruction:
If Me.ActiveControl.RowSourceType <> "Value List" Then
la chaine "Value List" par "Liste valeurs" et je pense que
tu n'auras plus de problème.
Un autre Eric
-----Message d'origine-----
Bonjour,
J'ai trouvé sur le site http://access.seneque.free.fr,
(Raymond MVP) un
exemple de code pour ajouter un élement à un controle de
type liste
déroulante.
Je suis en Access 2000
J'ai bien crée un controle zone de liste modifiable avec :
Limiter à liste Oui.
Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si
quelqu'un la crée dans
son environnement ,je suis preneur
Private Sub Liste0_NotInList(NouvelleValeur As String,
Suite As Integer)
If AjoutValeur(NouvelleValeur) Then
Suite = acDataErrAdded
Else
Suite = acDataErrContinue
End If
End Sub
Private Function AjoutValeur(NouvelleValeur As String) As
Boolean
On Error Resume Next
AjoutValeur = False
If Me.ActiveControl.RowSourceType <> "Value List" Then
Exit Function
End If
If MsgBox("Cette valeur ne figure pas dans la liste."
& vbCrLf & _
Bonjour Eric, A première vue, Il faut que tu remplaces dans l'instruction: If Me.ActiveControl.RowSourceType <> "Value List" Then
la chaine "Value List" par "Liste valeurs" et je pense que tu n'auras plus de problème.
Un autre Eric
-----Message d'origine----- Bonjour, J'ai trouvé sur le site http://access.seneque.free.fr, (Raymond MVP) un
exemple de code pour ajouter un élement à un controle de type liste
déroulante. Je suis en Access 2000 J'ai bien crée un controle zone de liste modifiable avec : Limiter à liste Oui. Origine Source : Liste des valeurs
Je n'arrive pas à faire fonctionner cet exemple et si quelqu'un la crée dans
son environnement ,je suis preneur Private Sub Liste0_NotInList(NouvelleValeur As String, Suite As Integer)
If AjoutValeur(NouvelleValeur) Then Suite = acDataErrAdded Else Suite = acDataErrContinue End If End Sub Private Function AjoutValeur(NouvelleValeur As String) As Boolean
On Error Resume Next AjoutValeur = False If Me.ActiveControl.RowSourceType <> "Value List" Then Exit Function End If If MsgBox("Cette valeur ne figure pas dans la liste." & vbCrLf & _