Bonjour
Ma requete divise une colonne par une autre. Lorsque la colonne diviseur est
= 0, j'obtiens : #Erreur.
Comment faire pour remplacer "#Erreur" par un message ou ne rien mettre du
tout dans le résultat de ma requete?
Merci d'avance
Eric
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
Raymond [mvp]
Bonsoir.
il faut utiliser la fonction Nz pour tester en même temp la valeur 0 et la valeur Nul. le problème étant de savoir ce qu'on veut faire: 1 - on divise par 1 pour retrouver le dividende 2 - on ignore tout et le résultat est 0 3 - on ignore tout et le résultat est Null, ou texte ou autre chose ..........
ce qui donne les 3 cas suivants:
x = Nz(Dividende, 0) / Nz(diviseur, 1) ou x = IIf(Nz(diviseur, 0) = 0, Dividende, Nz(Dividende, 0) / diviseur)
"sinpa" a écrit dans le message de news: 4676bf8d$0$21146$ | Bonjour | Ma requete divise une colonne par une autre. Lorsque la colonne diviseur est | = 0, j'obtiens : #Erreur. | Comment faire pour remplacer "#Erreur" par un message ou ne rien mettre du | tout dans le résultat de ma requete? | Merci d'avance | Eric | |
Bonsoir.
il faut utiliser la fonction Nz pour tester en même temp la valeur 0 et la
valeur Nul.
le problème étant de savoir ce qu'on veut faire:
1 - on divise par 1 pour retrouver le dividende
2 - on ignore tout et le résultat est 0
3 - on ignore tout et le résultat est Null, ou texte ou autre chose
..........
ce qui donne les 3 cas suivants:
x = Nz(Dividende, 0) / Nz(diviseur, 1)
ou
x = IIf(Nz(diviseur, 0) = 0, Dividende, Nz(Dividende, 0) / diviseur)
x étant une donnée de type Variant pour pouvoir encaisser les valeurs Null,
dans le code vba.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/
Venez découvrir Open XML, le nouveau format de fichier de la suite Office !
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db
"sinpa" <nospam@nospam.fr> a écrit dans le message de news:
4676bf8d$0$21146$7a628cd7@news.club-internet.fr...
| Bonjour
| Ma requete divise une colonne par une autre. Lorsque la colonne diviseur
est
| = 0, j'obtiens : #Erreur.
| Comment faire pour remplacer "#Erreur" par un message ou ne rien mettre du
| tout dans le résultat de ma requete?
| Merci d'avance
| Eric
|
|
il faut utiliser la fonction Nz pour tester en même temp la valeur 0 et la valeur Nul. le problème étant de savoir ce qu'on veut faire: 1 - on divise par 1 pour retrouver le dividende 2 - on ignore tout et le résultat est 0 3 - on ignore tout et le résultat est Null, ou texte ou autre chose ..........
ce qui donne les 3 cas suivants:
x = Nz(Dividende, 0) / Nz(diviseur, 1) ou x = IIf(Nz(diviseur, 0) = 0, Dividende, Nz(Dividende, 0) / diviseur)
"sinpa" a écrit dans le message de news: 4676bf8d$0$21146$ | Bonjour | Ma requete divise une colonne par une autre. Lorsque la colonne diviseur est | = 0, j'obtiens : #Erreur. | Comment faire pour remplacer "#Erreur" par un message ou ne rien mettre du | tout dans le résultat de ma requete? | Merci d'avance | Eric | |
sinpa
Merci, ça marche avec : Expr2: VraiFaux(Nz([Table1]![diviseur];0)=0;"ns";Nz([Table1]![dividende];1)/Nz([Table1]![diviseur];0))
NB : Access a remplacé IIf (???) par VraiFaux Je n'ai pas utilisé de code vba; j'ai utlisé le générateur d'expression dans ma requete en mode création
"Raymond [mvp]" a écrit dans le message de news:
Bonsoir.
il faut utiliser la fonction Nz pour tester en même temp la valeur 0 et la valeur Nul. le problème étant de savoir ce qu'on veut faire: 1 - on divise par 1 pour retrouver le dividende 2 - on ignore tout et le résultat est 0 3 - on ignore tout et le résultat est Null, ou texte ou autre chose ..........
ce qui donne les 3 cas suivants:
x = Nz(Dividende, 0) / Nz(diviseur, 1) ou x = IIf(Nz(diviseur, 0) = 0, Dividende, Nz(Dividende, 0) / diviseur)
"sinpa" a écrit dans le message de news: 4676bf8d$0$21146$ | Bonjour | Ma requete divise une colonne par une autre. Lorsque la colonne diviseur est | = 0, j'obtiens : #Erreur. | Comment faire pour remplacer "#Erreur" par un message ou ne rien mettre du | tout dans le résultat de ma requete? | Merci d'avance | Eric | |
Merci, ça marche avec : Expr2:
VraiFaux(Nz([Table1]![diviseur];0)=0;"ns";Nz([Table1]![dividende];1)/Nz([Table1]![diviseur];0))
NB : Access a remplacé IIf (???) par VraiFaux
Je n'ai pas utilisé de code vba; j'ai utlisé le générateur d'expression dans
ma requete en mode création
"Raymond [mvp]" <xyzofficesystem.accessxyz@free.fr> a écrit dans le message
de news: OC7jUCdsHHA.4600@TK2MSFTNGP03.phx.gbl...
Bonsoir.
il faut utiliser la fonction Nz pour tester en même temp la valeur 0 et la
valeur Nul.
le problème étant de savoir ce qu'on veut faire:
1 - on divise par 1 pour retrouver le dividende
2 - on ignore tout et le résultat est 0
3 - on ignore tout et le résultat est Null, ou texte ou autre chose
..........
ce qui donne les 3 cas suivants:
x = Nz(Dividende, 0) / Nz(diviseur, 1)
ou
x = IIf(Nz(diviseur, 0) = 0, Dividende, Nz(Dividende, 0) / diviseur)
x étant une donnée de type Variant pour pouvoir encaisser les valeurs
Null,
dans le code vba.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/
Venez découvrir Open XML, le nouveau format de fichier de la suite Office
!
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db
"sinpa" <nospam@nospam.fr> a écrit dans le message de news:
4676bf8d$0$21146$7a628cd7@news.club-internet.fr...
| Bonjour
| Ma requete divise une colonne par une autre. Lorsque la colonne diviseur
est
| = 0, j'obtiens : #Erreur.
| Comment faire pour remplacer "#Erreur" par un message ou ne rien mettre
du
| tout dans le résultat de ma requete?
| Merci d'avance
| Eric
|
|
Merci, ça marche avec : Expr2: VraiFaux(Nz([Table1]![diviseur];0)=0;"ns";Nz([Table1]![dividende];1)/Nz([Table1]![diviseur];0))
NB : Access a remplacé IIf (???) par VraiFaux Je n'ai pas utilisé de code vba; j'ai utlisé le générateur d'expression dans ma requete en mode création
"Raymond [mvp]" a écrit dans le message de news:
Bonsoir.
il faut utiliser la fonction Nz pour tester en même temp la valeur 0 et la valeur Nul. le problème étant de savoir ce qu'on veut faire: 1 - on divise par 1 pour retrouver le dividende 2 - on ignore tout et le résultat est 0 3 - on ignore tout et le résultat est Null, ou texte ou autre chose ..........
ce qui donne les 3 cas suivants:
x = Nz(Dividende, 0) / Nz(diviseur, 1) ou x = IIf(Nz(diviseur, 0) = 0, Dividende, Nz(Dividende, 0) / diviseur)
"sinpa" a écrit dans le message de news: 4676bf8d$0$21146$ | Bonjour | Ma requete divise une colonne par une autre. Lorsque la colonne diviseur est | = 0, j'obtiens : #Erreur. | Comment faire pour remplacer "#Erreur" par un message ou ne rien mettre du | tout dans le résultat de ma requete? | Merci d'avance | Eric | |
Raymond [mvp]
Bonjour. VraiFaux est la traduction française de IIF en anglais, si tu affiches le SQL tu auras IIF.
"sinpa" a écrit dans le message de news: 4676f1d3$0$21147$ | Merci, ça marche avec : Expr2: | VraiFaux(Nz([Table1]![diviseur];0)=0;"ns";Nz([Table1]![dividende];1)/Nz([Table1]![diviseur];0)) | | NB : Access a remplacé IIf (???) par VraiFaux | Je n'ai pas utilisé de code vba; j'ai utlisé le générateur d'expression dans | ma requete en mode création
Bonjour.
VraiFaux est la traduction française de IIF en anglais, si tu affiches le
SQL tu auras IIF.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/
Venez découvrir Open XML, le nouveau format de fichier de la suite Office !
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db
"sinpa" <nospam@nospam.fr> a écrit dans le message de news:
4676f1d3$0$21147$7a628cd7@news.club-internet.fr...
| Merci, ça marche avec : Expr2:
|
VraiFaux(Nz([Table1]![diviseur];0)=0;"ns";Nz([Table1]![dividende];1)/Nz([Table1]![diviseur];0))
|
| NB : Access a remplacé IIf (???) par VraiFaux
| Je n'ai pas utilisé de code vba; j'ai utlisé le générateur d'expression
dans
| ma requete en mode création
"sinpa" a écrit dans le message de news: 4676f1d3$0$21147$ | Merci, ça marche avec : Expr2: | VraiFaux(Nz([Table1]![diviseur];0)=0;"ns";Nz([Table1]![dividende];1)/Nz([Table1]![diviseur];0)) | | NB : Access a remplacé IIf (???) par VraiFaux | Je n'ai pas utilisé de code vba; j'ai utlisé le générateur d'expression dans | ma requete en mode création