Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/02/2011, 18h53   #1
Invité de passage
 
Inscription : mai 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 9
Points : 2
Points : 2
Par défaut Modification valeur par défaut d'un champ fonction du contenu autre champ

Bonjour,
Je me permet de poser une question de débutant... après avoir parcouru le forum et la FAQ access en vain !!!
(J'ai trouvé comment compléter une liste déroulante... mais là je sèche...)
Mon besoin (gestion des membres d'une association) :
j'ai un champ "Montant cotisation versé", pour lequel j'ai une valeur par défaut de 3,00 euros. Cette valeur est mise dans "valeur par défaut" au niveau du formulaire. Or j'ai trois types de cotisants :
adhérent = 3 euros
bienfaiteur => 10 euros
bénévole = 0 euro
Je voudrai modifier automatiquement le montant par défaut de 3 euros par 0 quand le champ "qualification" contient bénévole (seules valeurs possibles : bénévole, bienfaiteur, adhérent).
Pour ca, après avoir parcouru forum et faq, je pensai pouvoir utiliser ValideSi , mais ca ne fonctionne pas...
J'ai mis dans le champ ValideSi =([Qualification])<>"Bénévole"
Quelle est l'erreur que je fais Syntaxe?

Merci de votre aide !!!
Mike350 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/02/2011, 19h05   #2
Rédacteur/Modérateur
 
Avatar de GAYOT
 
Homme Jean-Damien GAYOT
Inscription : novembre 2004
Messages : 2 071
Détails du profil
Informations personnelles :
Nom : Homme Jean-Damien GAYOT
Âge : 56
Localisation : France, Meuse (Lorraine)

Informations professionnelles :
Secteur : Distribution

Informations forums :
Inscription : novembre 2004
Messages : 2 071
Points : 4 385
Points : 4 385
Envoyer un message via Skype™ à GAYOT
Bonjour
Peut être serais ce plus facile de jouer sur l'évènement 'Après mise à jour' de ta Zone cotisant:
Code :
1
2
3
4
5
6
7
8
9
10
11
Private Sub TaZoneCotisant_AfterUpdate()
With Me
 If .NomDeTaZoneCotisant.Value = "Bénévole" Then
   .NomDeTaZoneMontantCotisation.Value = 0
  ElseIf .NomDeTaZoneCotisant.Value = "Bienfaiteur" Then
   .NomDeTaZoneMontantCotisation.Value = 10
  ElseIf .NomDeTaZoneCotisant.Value = "Adhérent" Then
   .NomDeTaZoneMontantCotisation.Value = 3
  End If
End With
End Sub
__________________
Plus j'avance et plus j'ai l'impression de ne rien savoir. Et comme j'essaie d'aller loin..!!.

Tutoriels sur:http://jdgayot.developpez.com

Pas de sujets techniques par Mp. Sinon
GAYOT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/02/2011, 19h31   #3
Invité de passage
 
Inscription : mai 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 9
Points : 2
Points : 2
Bonsoir
Un grand merci pour cette prompte réponse...
Je m'en vais tester tout de suite...
Mike350 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/02/2011, 19h59   #4
Invité de passage
 
Inscription : mai 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 9
Points : 2
Points : 2
Bonsoir,
j'ai testé la modification proposé, ca ne fonctionne pas... je vais regarder de plus prés. Merci de l'aide...
Mike350 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/02/2011, 22h28   #5
Invité de passage
 
Inscription : mai 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 9
Points : 2
Points : 2
Re bonsoir,

Je donne ma langue au chat !!! voila le code, il ne se passe rien... snif !!!
La valeur par défaut de 3 n'est pas modifiée lorsque je sélectionne dans la liste "bénévole"...

Code :
1
2
3
4
5
6
7
8
9
10
11
Private Sub Montant_Cotisation_payée_AfterUpdate()
With Me
 If .Qualification.Value = "Bénévole" Then
    .Montant versé.Value = 0
  ElseIf .Qualification.Value = "Adhérent" Then
    .Montant versé.Value = 3
  ElseIf .Qualification.Value = "Bienfaiteur" Then
    .Montant versé.Value = 10
  End If
End With
End Sub
Si quelqu'un a une idée...
J'ai lu que ValideSi avait un tas de contraintes, notamment qu'il était incapable de valider une donnée à partir du contenu d'un autre champ...
Mike350 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2011, 06h59   #6
Rédacteur/Modérateur
 
Avatar de GAYOT
 
Homme Jean-Damien GAYOT
Inscription : novembre 2004
Messages : 2 071
Détails du profil
Informations personnelles :
Nom : Homme Jean-Damien GAYOT
Âge : 56
Localisation : France, Meuse (Lorraine)

Informations professionnelles :
Secteur : Distribution

Informations forums :
Inscription : novembre 2004
Messages : 2 071
Points : 4 385
Points : 4 385
Envoyer un message via Skype™ à GAYOT
Bonjour
Dans le cas présent, sur le code que j'ai donnné, il n'y a pas de notion de valeur par défaut. C'est le fait de saisir un élément dans une zone et de la valider qui attibue une valeur à une autre zone.
__________________
Plus j'avance et plus j'ai l'impression de ne rien savoir. Et comme j'essaie d'aller loin..!!.

Tutoriels sur:http://jdgayot.developpez.com

Pas de sujets techniques par Mp. Sinon
GAYOT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2011, 09h52   #7
Invité de passage
 
Inscription : mai 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 9
Points : 2
Points : 2
Citation:
Envoyé par GAYOT Voir le message
Bonjour
C'est le fait de saisir un élément dans une zone et de la valider qui attibue une valeur à une autre zone.
Bonjour,
Merci du temps consacré....
J'ai vérifié la table et le formulaire : il n'y a pas de valeur par défaut.
* soit je fais une erreur de syntaxe sur la ligne :
Code :
1
2
If .Qualification.Value = "Bénévole" Then
   .Montant versé.Value = 0


le champ "Montant versé" doit-il s'écrire : "Montant_versé ?
j'ai essayé les deux formes, rien n'y fait.
* comment comprendre "de la valider" ??? ce champ est une liste déroulante, je selecte avec la souris le bon élement de la liste et clique dessus puis passe à un champ suivant. Dans la table, le champ est correctement rempli...
Je dois faire une erreur ENORME.... !!!!
Merci pour les conseils... excellente journée.
Mike350 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2011, 10h43   #8
Rédacteur/Modérateur
 
Avatar de GAYOT
 
Homme Jean-Damien GAYOT
Inscription : novembre 2004
Messages : 2 071
Détails du profil
Informations personnelles :
Nom : Homme Jean-Damien GAYOT
Âge : 56
Localisation : France, Meuse (Lorraine)

Informations professionnelles :
Secteur : Distribution

Informations forums :
Inscription : novembre 2004
Messages : 2 071
Points : 4 385
Points : 4 385
Envoyer un message via Skype™ à GAYOT
Attention. Il faut donner le nom exact de la zone. Elle correspond à la propriété 'Nom' du contrôle.
__________________
Plus j'avance et plus j'ai l'impression de ne rien savoir. Et comme j'essaie d'aller loin..!!.

Tutoriels sur:http://jdgayot.developpez.com

Pas de sujets techniques par Mp. Sinon
GAYOT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2011, 19h47   #9
Invité de passage
 
Inscription : mai 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 9
Points : 2
Points : 2
Merci, c'est bien noté ... et corrigé. Malheureusement, quelque soit la selection (adhérent, etc...) la zone montant versé reste à blanc... Je ne comprends plus du tout...

Merci de votre aide, je vais chercher un autre moyen... La nuit porte conseil !!!
Mike350 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/03/2011, 16h20   #10
Invité de passage
 
Inscription : mai 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 9
Points : 2
Points : 2
Bonjour à tous,
J'ai réussi à mettre en application les modif suggérées par Gayot.
Merci à tous de votre aide.
Excellente journée et à bientôt - probablement- pour d'autres questions...
Mike350 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h06.


 
 
 
 
Partenaires

Hébergement Web