Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
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 21/01/2011, 15h33   #1
Futur Membre du Club
 
Medi Basm
Enseignant Chercheur
Inscription : septembre 2008
Messages : 18
Détails du profil
Informations personnelles :
Nom : Medi Basm
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Enseignant Chercheur
Secteur : Enseignement

Informations forums :
Inscription : septembre 2008
Messages : 18
Points : 18
Points : 18
Envoyer un message via MSN à medibasm Envoyer un message via Yahoo à medibasm Envoyer un message via Skype™ à medibasm
Par défaut A la recherche d'une fonction dans Access

Comment creer une fonction qui contient plusieurs expressions, je m'explique:
dans une requete j'ai un champs nommé "moyenne generale" où il y a des valeurs numerique decimales, et j'ai creer un autre champs nommé "recompenses" ou access doit inscrire l'une des expressions suivantes d'après les conditions:
1-si la valeur dans "moyenne generale" est entre 16 et 17,99 access doit inscrire [felicitation]
2- si la valeur dans "moyenne generale" est entre 14 et 15,99 access doit inscrire [encouragement]
3- si la valeur dans "moyenne generale" est entre 13 et 13,99 access doit inscrire [tableau d honneur]
4- si la valeur dans "moyenne generale" est entre 7 et 8,99 access doit inscrire [avertissement]
5- si la valeur dans "moyenne generale" est entre 0 et 6,99 access doit inscrire [blame]
Merci
medibasm est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/01/2011, 15h47   #2
Membre régulier
 
Avatar de samuelsiffert
 
Inscription : avril 2006
Messages : 93
Détails du profil
Informations personnelles :
Âge : 37

Informations forums :
Inscription : avril 2006
Messages : 93
Points : 80
Points : 80
Bonjour,

Pour afficher la bonne valeur dans ton champ récompense utilise la fonction iif...
__________________
(Access 97)

*SVP marquez vos discussions quand c'est le cas.

@+

Sam.
samuelsiffert est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/01/2011, 17h06   #3
Modérateur
 
Homme Daniel
Inscription : juillet 2006
Messages : 1 220
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Âge : 67
Localisation : France

Informations professionnelles :
Secteur : Services à domicile

Informations forums :
Inscription : juillet 2006
Messages : 1 220
Points : 1 631
Points : 1 631
bonjour,
voir aussi la fonction Select Case
LE VIEUX est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 21/01/2011, 20h27   #4
Futur Membre du Club
 
Medi Basm
Enseignant Chercheur
Inscription : septembre 2008
Messages : 18
Détails du profil
Informations personnelles :
Nom : Medi Basm
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Enseignant Chercheur
Secteur : Enseignement

Informations forums :
Inscription : septembre 2008
Messages : 18
Points : 18
Points : 18
Envoyer un message via MSN à medibasm Envoyer un message via Yahoo à medibasm Envoyer un message via Skype™ à medibasm
Par défaut je voudrais plus de 2 arguments

Merci Samuel et Merci Le Vieux
mais pour ce qui est de iif je l'ai essayé mais elle ne comporte que deux arguments seulement alors que j'ai besoin de 5
j'ai essayé aussi 'vrai-faux" et c'est le meme principe
pour ce qui est de "select case " j'ai cherché dans le generateur d'expressions mais je ne l'ai pas trouver
comment resoudre mon probleme?
NB. je viens d'installer aujourd'hui office2010
medibasm est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/01/2011, 22h32   #5
Membre Expert
 
Femme
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 480
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : juin 2007
Messages : 480
Points : 1 024
Points : 1 024
Bonjour,
En complément, la fonction IIf n'a que 2 arguments mais peut s'appeler en cascade :
Code :
IIf(condition1; resultat1; IIf(condition2; resultat2; IIf(condition3; resultat3; IIf(condition4; resultat4; IIf(condition5; resultat5;resultqt_sinon)))))
tedo01 est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 22/01/2011, 09h33   #6
Modérateur
 
Homme Daniel
Inscription : juillet 2006
Messages : 1 220
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Âge : 67
Localisation : France

Informations professionnelles :
Secteur : Services à domicile

Informations forums :
Inscription : juillet 2006
Messages : 1 220
Points : 1 631
Points : 1 631
bonjour,
Select Case c'est du VBA a voir dans le générateur de code - qui ouvre le VBE afin de saisir le code correspondant voir dans l'aide VBA.
dans le générateur d'expression pour ton problème voir PremVrai.
LE VIEUX est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/01/2011, 15h09   #7
Futur Membre du Club
 
Medi Basm
Enseignant Chercheur
Inscription : septembre 2008
Messages : 18
Détails du profil
Informations personnelles :
Nom : Medi Basm
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Enseignant Chercheur
Secteur : Enseignement

Informations forums :
Inscription : septembre 2008
Messages : 18
Points : 18
Points : 18
Envoyer un message via MSN à medibasm Envoyer un message via Yahoo à medibasm Envoyer un message via Skype™ à medibasm
Par défaut Hourah ! ça marche

Je ne sais comment vous remercier tous
ça a enfin marché grâce à votre aide, je vous remercie encore infiniment!
c'est l'idée de tedo01 qui a reussi , j'ai mis la fonction IIf en cascade et ça a donner ceci:

Recompenses et Sanctions: VraiFaux([Moyenne] Entre 18 Et 20;"Eloge";
VraiFaux([Moyenne] Entre 16 Et 17,99;"felicitation";
VraiFaux([Moyenne] Entre 14 Et 15,99;"Encouragement";
VraiFaux([Moyenne] Entre 13 Et 13,99;"Tableau d'Honneur";
VraiFaux([Moyenne] Entre 7 Et 8,99;"Avertissement";
VraiFaux([Moyenne] Entre 1 Et 6,99;"Blame"))))))

Access a changé "IIF" en "VraiFaux" lui-même
En ce qui est du VB j'avoue que j'en suis encore nul.

A Bientôt !
Medibasm
medibasm 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 02h22.


 
 
 
 
Partenaires

Hébergement Web