Récuperer la valeur saisie sur une liste déroulante

Le
Jacques
Bonsoir,

J'ai un formulaire avec une liste déroulante « cmbVille » qui me donne
quelques villes

Lorsque la ville n'existe pas, je saisie la ville manquante ( par
exemple Paris) puis en faisant entrée le formulaire Ville s'ouvre,
et je voudrais avoir la valeur de ma saisie (Paris) sur la zone de
texte (txtVille) du formulaire Ville.

Merci de votre aide.

Salutations
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Thierry (ze Titi)
Le #6303881
Bonjour Jacques

As-tu essayé, dans l'évènement "Sur absence dans liste":

Ville!txtVille=NewData

Dans ton message
Bonsoir,

J'ai un formulaire avec une liste déroulante « cmbVille » qui me donne
quelques villes

Lorsque la ville n'existe pas, je saisie la ville manquante ( par
exemple Paris) puis en faisant entrée le formulaire Ville s'ouvre,
et je voudrais avoir la valeur de ma saisie (Paris) sur la zone de
texte (txtVille) du formulaire Ville.

Merci de votre aide.

Salutations


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Jacques
Le #6303621
On 20 juil, 09:16, Thierry (ze Titi) wrote:
Bonjour Jacques

As-tu essayé, dans l'évènement "Sur absence dans liste":

Ville!txtVille=NewData

Dans ton message
Bonsoir,

J'ai un formulaire avec une liste déroulante « cmbVille » qui me donne
quelques villes

Lorsque la ville n'existe pas, je saisie la ville manquante ( par
exemple Paris) puis en faisant entrée le formulaire Ville s'ouvre,
et je voudrais avoir la valeur de ma saisie (Paris) sur la zone de
texte (txtVille) du formulaire Ville.

Merci de votre aide.

Salutations


--
Cordialement,
Thierry

Tout pour réussir avec Access :http://www.mpfa.info


Bonjour Thierry,

Merci pour ton aide.

En exécutant ce code j'ai l'erreur suivante :

Impossible d'attribuer une valeur à cet objet

Sur Formulaire 1 :

Private Sub cmbVille_NotInList(NewData As String, Response As Integer)
If MsgBox("La Ville " & NewData & " est absente de la liste " _
& vbCrLf & " Voulez-vous ajouter " & NewData & " à la liste
des villes ?", _
vbYesNo + vbQuestion + vbDefaultButton2, "Ajout") = vbYes
Then

DoCmd.OpenForm "frm Saisie des villes", , , , ,
OpenArgs:=NewData

Response = acDataErrAdded
Else
Response = acDataErrContinue
cmbVille.Undo
End If

Sur Formulaire 2 :

Private Sub Form_Open(Cancel As Integer)
If IsNull(Me.OpenArgs) Then
'rien à faire
Else
Me.txtVille = Me.OpenArgs
End If

Salutations


Thierry (ze Titi)
Le #6303581
Bonjour Jacques

Sur quelle ligne se produit l'erreur ?
Je suppose ici mais je n'en suis pas sûr:

DoCmd.OpenForm "frm Saisie des villes", , , , , , NewData

Dans ton formulaire 2 tu peux simplifier ton code:

Private Sub Form_Open(Cancel As Integer)
If Not IsNull(Me.OpenArgs) Then
Me.txtVille = Me.OpenArgs
End If


Dans ton message
On 20 juil, 09:16, Thierry (ze Titi) wrote:
Bonjour Jacques

As-tu essayé, dans l'évènement "Sur absence dans liste":

Ville!txtVille=NewData

Dans ton message
Bonsoir,

J'ai un formulaire avec une liste déroulante « cmbVille » qui me donne
quelques villes

Lorsque la ville n'existe pas, je saisie la ville manquante ( par
exemple Paris) puis en faisant entrée le formulaire Ville s'ouvre,
et je voudrais avoir la valeur de ma saisie (Paris) sur la zone de
texte (txtVille) du formulaire Ville.
Merci de votre aide.

Salutations


--
Cordialement,
Thierry

Tout pour réussir avec Access :http://www.mpfa.info


Bonjour Thierry,

Merci pour ton aide.

En exécutant ce code j'ai l'erreur suivante :

Impossible d'attribuer une valeur à cet objet

Sur Formulaire 1 :

Private Sub cmbVille_NotInList(NewData As String, Response As Integer)
If MsgBox("La Ville " & NewData & " est absente de la liste " _
& vbCrLf & " Voulez-vous ajouter " & NewData & " à la liste
des villes ?", _
vbYesNo + vbQuestion + vbDefaultButton2, "Ajout") = vbYes
Then

DoCmd.OpenForm "frm Saisie des villes", , , , ,
OpenArgs:=NewData

Response = acDataErrAdded
Else
Response = acDataErrContinue
cmbVille.Undo
End If

Sur Formulaire 2 :

Private Sub Form_Open(Cancel As Integer)
If IsNull(Me.OpenArgs) Then
'rien à faire
Else
Me.txtVille = Me.OpenArgs
End If

Salutations


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info



Jacques
Le #6303471
On 20 juil, 14:10, Thierry (ze Titi) wrote:
Bonjour Jacques

Sur quelle ligne se produit l'erreur ?
Je suppose ici mais je n'en suis pas sûr:

DoCmd.OpenForm "frm Saisie des villes", , , , , , NewData

Dans ton formulaire 2 tu peux simplifier ton code:

Private Sub Form_Open(Cancel As Integer)
If Not IsNull(Me.OpenArgs) Then
Me.txtVille = Me.OpenArgs
End If

Dans ton message




On 20 juil, 09:16, Thierry (ze Titi) wrote:
Bonjour Jacques

As-tu essayé, dans l'évènement "Sur absence dans liste":

Ville!txtVille=NewData

Dans ton message
Bonsoir,

J'ai un formulaire avec une liste déroulante « cmbVille » qui m e donne
quelques villes

Lorsque la ville n'existe pas, je saisie la ville manquante ( par
exemple Paris) puis en faisant entrée le formulaire Ville s'ouvr e,
et je voudrais avoir la valeur de ma saisie (Paris) sur la zone de
texte (txtVille) du formulaire Ville.
Merci de votre aide.

Salutations


--
Cordialement,
Thierry

Tout pour réussir avec Access :http://www.mpfa.info


Bonjour Thierry,

Merci pour ton aide.

En exécutant ce code j'ai l'erreur suivante :

Impossible d'attribuer une valeur à cet objet

Sur Formulaire 1 :

Private Sub cmbVille_NotInList(NewData As String, Response As Integer)
If MsgBox("La Ville " & NewData & " est absente de la liste " _
& vbCrLf & " Voulez-vous ajouter " & NewData & " à la liste
des villes ?", _
vbYesNo + vbQuestion + vbDefaultButton2, "Ajout") = vbYes
Then

DoCmd.OpenForm "frm Saisie des villes", , , , ,
OpenArgs:=NewData

Response = acDataErrAdded
Else
Response = acDataErrContinue
cmbVille.Undo
End If

Sur Formulaire 2 :

Private Sub Form_Open(Cancel As Integer)
If IsNull(Me.OpenArgs) Then
'rien à faire
Else
Me.txtVille = Me.OpenArgs
End If

Salutations


--
Cordialement,
Thierry

Tout pour réussir avec Access :http://www.mpfa.info- Masquer le texte d es messages précédents -

- Afficher le texte des messages précédents -


Re Bonjour,

L'erreur se trouve sur la ligne:

Me.txtVille = Me.OpenArgs

Lorsque je passe la souris sur Me.txtVille
j'ai la valeur du premier enregistrement de la tbl ville,
et sur Me.OpenArgs j'ai la valeur que je voudrais ajouter

Salutations




Thierry (ze Titi)
Le #6303391
Ton formulaire de saisie des villes est basé sur une table ?
Dans ce cas, il faut déclencher l'ouverture de ce formulaire sur un
nouvel enregistrement.

Docmd.OpenForm "frm Saisie des villes",,,,AcFormAdd,,NewData

Message du vendredi 20/07/2007

Re Bonjour,

L'erreur se trouve sur la ligne:

Me.txtVille = Me.OpenArgs

Lorsque je passe la souris sur Me.txtVille
j'ai la valeur du premier enregistrement de la tbl ville,
et sur Me.OpenArgs j'ai la valeur que je voudrais ajouter

Salutations


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Jacques
Le #6303161
On 20 juil, 15:50, Thierry (ze Titi) wrote:
Ton formulaire de saisie des villes est basé sur une table ?
Dans ce cas, il faut déclencher l'ouverture de ce formulaire sur un
nouvel enregistrement.

Docmd.OpenForm "frm Saisie des villes",,,,AcFormAdd,,NewData

Message du vendredi 20/07/2007

Re Bonjour,

L'erreur se trouve sur la ligne:

Me.txtVille = Me.OpenArgs

Lorsque je passe la souris sur Me.txtVille
j'ai la valeur du premier enregistrement de la tbl ville,
et sur Me.OpenArgs j'ai la valeur que je voudrais ajouter

Salutations


--
Cordialement,
Thierry

Tout pour réussir avec Access :http://www.mpfa.info


Bonsoir Thierry

Merci pour ta réponse ça marche.

A quel endroit je dois mettre un Requery pour actualiser ma liste
cmbVille, j'ai essayé sur fermeture du formulaire 2
et j'obtient l'erreur :
Enregistrerz le champ en cours avant d'exécuter l'action actualiser.

De même comment supprimer le message "Le texte entré n'est pas un
élément de la liste" qui fait double emploi
avec mon Msgbox.

Salutations


Publicité
Poster une réponse
Anonyme