[Access] la fonction 'si' ou un équivalent
fove48
Messages postés
49
Statut
Membre
-
fove48 Messages postés 49 Statut Membre -
fove48 Messages postés 49 Statut Membre -
Bonjour,
Je ne suis pas très doué en Access mais je suis sure que mon problème a une solution très simple à trouver !
Voila
J'ai une base de donnée consacrée aux coupures de presse, dans une table j'ai les champs suivants :
- Articles
- Nom de l'article
- Auteur
Sauf que pour certains enregistrements, - le nom de l'auteur de l'article n'est pas disponible -
Maintenant, j'ai créer un état et dans une zone de texte j'ai mis le contrôle suivant :
=[Nom de l'article] & "par " & [Auteur] & "."
Le problème qui se pose est que pour certains enregistrements, ceux pour lesquels l'auteur n'est pas spécifié, j'ai quelque-chose comme :
Trou de la sécu par. (Trou de la sécu c'est le nom de de l'article)
Je souhaite donc que se "par" n'apparaisse pas quand le champ "auteur" est vide
au-fait, je veux faire quelque-chose du genre :
=[Nom de l'article]
si (Auteur != NULL)
{
& "par" & [Auteur]
}
& "."
sauf que je n'arrive pas à matérialiser cette notion de condition (si if iif) s'il-vous plaid helpp !
Je ne suis pas très doué en Access mais je suis sure que mon problème a une solution très simple à trouver !
Voila
J'ai une base de donnée consacrée aux coupures de presse, dans une table j'ai les champs suivants :
- Articles
- Nom de l'article
- Auteur
Sauf que pour certains enregistrements, - le nom de l'auteur de l'article n'est pas disponible -
Maintenant, j'ai créer un état et dans une zone de texte j'ai mis le contrôle suivant :
=[Nom de l'article] & "par " & [Auteur] & "."
Le problème qui se pose est que pour certains enregistrements, ceux pour lesquels l'auteur n'est pas spécifié, j'ai quelque-chose comme :
Trou de la sécu par. (Trou de la sécu c'est le nom de de l'article)
Je souhaite donc que se "par" n'apparaisse pas quand le champ "auteur" est vide
au-fait, je veux faire quelque-chose du genre :
=[Nom de l'article]
si (Auteur != NULL)
{
& "par" & [Auteur]
}
& "."
sauf que je n'arrive pas à matérialiser cette notion de condition (si if iif) s'il-vous plaid helpp !
A voir également:
- Fonction si dans access
- Fonction si et - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Access appdata - Guide
- Fonction remplacer dans word - Guide
12 réponses
Ca peut ressembler à ca:
=VraiFaux(EstNull([Auteur] );[Nom de l'article] ; [Nom de l'article] & "par " & [Auteur] & "." )
Soit si [Auteur] est nul : [Nom de l'article] sinon: [Nom de l'article] & "par " & [Auteur] & "."
à adapter suivant ton cas
Bon week end
=VraiFaux(EstNull([Auteur] );[Nom de l'article] ; [Nom de l'article] & "par " & [Auteur] & "." )
Soit si [Auteur] est nul : [Nom de l'article] sinon: [Nom de l'article] & "par " & [Auteur] & "."
à adapter suivant ton cas
Bon week end
J'ai trouver depuis, l'astuce mais merci quand même
quoique pour être franc, je voulais éviter une redondance
c à dire que j'aurais souhaiter que sa commence par =[Nom de l'article] et que se ne soit qu'après que vienne ma condition genre
=[Nom de l'article] & (VraiFaux (EstNull([Auteur] );"." ; "par " & [Auteur] & "." ) )
N'est il pas possible de mettre la condition au milieu ?
quoique pour être franc, je voulais éviter une redondance
c à dire que j'aurais souhaiter que sa commence par =[Nom de l'article] et que se ne soit qu'après que vienne ma condition genre
=[Nom de l'article] & (VraiFaux (EstNull([Auteur] );"." ; "par " & [Auteur] & "." ) )
N'est il pas possible de mettre la condition au milieu ?
Oui pas de soucis, n'oubliez pas de mettre un espace apès =[Nom de l'article] pour ne pas qu'il soit collé au reste dans votre résultat
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjours,
Je reviens je voudrais juste savoir s'il n y a pas de faute de syntaxe dans le code suivant :
= ( VraiFaux ( EstNull([Auteur]) , , [Auteur] ) ) & ( VraiFaux ( EstNull([Pérsonage]) , , ", d'aprés le pérsonnage " & [Pérsonage] ) ) & ( VraiFaux ( EstNull([Oeuvre]) , , " dans " & [Oeuvre] ) )
En fait, j'ai un doute pour ce qui est entre les deux virgules, est-ce que sa peut rester vide ?
Merci et à bientôt
Je reviens je voudrais juste savoir s'il n y a pas de faute de syntaxe dans le code suivant :
= ( VraiFaux ( EstNull([Auteur]) , , [Auteur] ) ) & ( VraiFaux ( EstNull([Pérsonage]) , , ", d'aprés le pérsonnage " & [Pérsonage] ) ) & ( VraiFaux ( EstNull([Oeuvre]) , , " dans " & [Oeuvre] ) )
En fait, j'ai un doute pour ce qui est entre les deux virgules, est-ce que sa peut rester vide ?
Merci et à bientôt
VraiFaux ( EstNull([Auteur]) ;""; [Auteur] ) , il faut mettre rien: "" ça veut dire est-ce que [Auteur] est null? si oui j'affiche rien (soit "") si non = [Auteur] a une valeur alors j'affiche [Auteur]
Bonjour triwix, j'ai essayer sa aussi mais sa n'avais pas marcher malheureusement, je me demande si Access n'est pas limité à un nombre de caractère par formule et qu'au de la, je dois passer à SQL server ?
Rebonjour,
j'ai mis, mot pour mot le code suivant
=VraiFaux(EstNull([Auteur]),"",[Auteur])
et il considère la source controle non valide !! Qu'est-ce que sa veux dire ? En mode état j'ai le fameux #erreure
j'ai mis, mot pour mot le code suivant
=VraiFaux(EstNull([Auteur]),"",[Auteur])
et il considère la source controle non valide !! Qu'est-ce que sa veux dire ? En mode état j'ai le fameux #erreure
Sa y est, j'ai trouver la bonne expression :
=VraiFaux([Pérsonage]," D'aprés le pérsonnage " & [Pérsonage],"") & VraiFaux([Oeuvre]," dans " & [Oeuvre],"") & VraiFaux( [Auteur] ,VraiFaux( [Oeuvre] , " par " & [Auteur], [Auteur] ),"") & "."
Encore que certains cas, ne sont pas traités, je vais peaufiner.
Par contre, comment afficher le symbole suivant : " dans le texte, pasque lorsque je l'écrit dans mon expression il se confond avec les outils de syntaxe. Comment faire pour faire comprendre à l'ordit que je veux que se symbole apparaisse en tant que texte ?
Je sais que sous certains langages de programmation, il suffit de le faire précéder d'un anti-slash "\" mais la sa ne marche pas.
=VraiFaux([Pérsonage]," D'aprés le pérsonnage " & [Pérsonage],"") & VraiFaux([Oeuvre]," dans " & [Oeuvre],"") & VraiFaux( [Auteur] ,VraiFaux( [Oeuvre] , " par " & [Auteur], [Auteur] ),"") & "."
Encore que certains cas, ne sont pas traités, je vais peaufiner.
Par contre, comment afficher le symbole suivant : " dans le texte, pasque lorsque je l'écrit dans mon expression il se confond avec les outils de syntaxe. Comment faire pour faire comprendre à l'ordit que je veux que se symbole apparaisse en tant que texte ?
Je sais que sous certains langages de programmation, il suffit de le faire précéder d'un anti-slash "\" mais la sa ne marche pas.
ben, du moment que je fais un deux doubles-guillemets par exemple "" blabla "", il considère le premier double guillemet comme une chêne vide et il s'attend a se qu'après vienne un & or il tombe sur blabla, âpres, si toute fois il ne déclare pas qu'il y a une erreur jusque la, il vois en le second double-guillemet une autre chêne vide ...