[Access] Valeur d'un champ

Résolu/Fermé
nathh76 Messages postés 40 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 26 mai 2008 - 23 juil. 2007 à 17:06
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 - 23 juin 2010 à 09:44
Bonjour à tous,

J'ai un probleme dans access et je seche completement.

J'ai un champ qui recupere le resultat d'une requete. Parfois ce champs "semble" vide car la requete ne renvoie pas de resultat (ce qui est normal). Le soucis, c'est que j'utilise ce champ dans un autre calucl qui est [champ C]=[champ A]+[champ B] (rien de compliqué).Mais vu que le Champ A "semble" vide, il ne sais pas faire le calcul.

Je dis "semble" vide, car dans ma table j'ai rien du tout (meme pas un espace). Mais lorsque je fais des test de type If IsNull, ou if IsEmpty ou [champ A] ="" ou =0 cela ne marche pas.

Quelqu'un a une idée pour moi.

Cela serait sympa, car moi je vois plus.

5 réponses

blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
23 juil. 2007 à 17:14
Salut,

tu peux utiliser la fonction IIF qui renvoie une valeur ou une autre en fonction d'un test.

Pour le test il faut utiliser les fonctions comme des fonctions et non pas comme des constantes :
If IsNull(champA)...

Sinon, ça pourrait faire un truc comme ça :
SELECT IIf(IsNull(ChampA),"0",ChampA)
--
A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
0
nathh76 Messages postés 40 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 26 mai 2008 1
24 juil. 2007 à 17:11
Salut,

Merci pour ta reponse, cela ma bien aidé. Je connaissais pas ce genre de fonctions.

j'ai fini par utiliser la fonction Nz, mais c'est grace a ton aide car cela m'a aiguiller dans la bonne direction.

Merci beaucoup.
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
24 juil. 2007 à 22:14
Toutes les fonctions de vba sont utilisables dans SQL : fonctions mathématiques (sin, cos...), fonctions de chaines de caractères (left, right...).
0
moi sa marche ni avec NZ ni avec IIF
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
22 juin 2010 à 15:22
Quoi qui ne marche pas ?
Donne ton exemple...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
SELECT [coût MP].N°essai, [coût salarié/étape].N°étape, nz([utilisation machine/étape].[utilisation_machine],0) AS Expr1, nz([coût salarié/étape].[coût_sal_total],0) AS Expr2, nz([coût MP].[coût_MP],0) AS Expr3

FROM ([utilisation machine/étape] INNER JOIN [coût salarié/étape] ON ([utilisation machine/étape].N°Essai = [coût salarié/étape].N°Essai) AND ([utilisation machine/étape].N°étape = [coût salarié/étape].N°étape)) INNER JOIN [coût MP] ON ([coût salarié/étape].N°Essai = [coût MP].N°essai) AND ([coût salarié/étape].N°étape = [coût MP].N°étape) AND ([utilisation machine/étape].N°Essai = [coût MP].N°essai) AND ([utilisation machine/étape].N°étape = [coût MP].N°étape);


voila mon sql et sa marche pas, j'ai toujour des cases vides si un des champ est vide
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
23 juin 2010 à 08:36
Lesquelles ?
0
celle avec des nz, qui sont a la base calculé et qui me servent pour des calculs aprés
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
23 juin 2010 à 09:04
As-tu essayé : nz([utilisation machine/étape].[utilisation_machine],"0") ?
0
oui mais je pense que mon probleme ressemble plus a sa:

https://forums.commentcamarche.net/forum/affich-4991051-access-sql-0-dans-une-requete

mais j'arrive pas a l'appliqué, je comprend pas le truc des 2 requêtes
0
problème résolu.

merci quand meme
0