Format te cree une chaine donc si tu mets ton resultat dans une chaine tu peux faire simplement : format([TonChamp],"0.0000")
Je ne saisi pas pourquoi tu utlises une chaine pour stoquer une valeur numerique.
Pour faire une mise en forme conditionnelle un peux differente tu peux utiliser l'option expression et la tu peux mettre a peu pres n'importe quoi.
Un tuc du genre
DFirst("NomTonChamp", "NomTaScource", "NoTaClef=" & [NomTaClef])=[NomTonChamp])
devrait permettre de comparer la valeur du Ton champ dans l'enr courrant avec celui dont la clef correspond dans ta source.
Attention, cela risque de ramer pas mal.
Un possibilite est de recuperer tes valeurs de reference dans la source de donnees avec une jointure, comme cela les valeurs sont disponibles dans le meme enregistrement. Tu obtiens un truc du genre :
select [TaTable].[TonChamp] as [TonChamp], [TaTableRef].[TonChampRefMin] as [TonChampRefMin], [TaTableRef].[TonChampRefMax] as [TonChampRefMax] ...
Dans ta mise en forme conditionnelle tu choisi expression et tu mets [TonChampRefMin]<=[TonChamp] and [TonChamp]<=[TonChampRefMax] comme condition. (Il faut peut-etre un = au debut, je ne me souviens jamais).
L'avantage de cette solution c'est que tu peux facilement valider tes bornes puisqu'elles sont visibles dans la source putot que planquee dans la mise en forme.
A+
Partager