Bonjour à tous !

Je me prend la tête sur un petit problème depuis ce matin ...

Dans une proc report, j'ai besoin de modifier le style d'une cellule en fonction de :
  • 1 condition : la valeur d'une autre cellule (toujours la même)
  • 2 conditions : la valeur d'une autre cellule (toujours la même) + la valeur de la cellule elle-même (donc référence variable).


Petite précision complémentaire, je travaille avec des ACROSS (sinon, ça serait moins drôle )

Dans le premier cas, j'arrive à faire une boucle pour mettre en forme mes cellules dans un bloc compute avec une référence de cellule 'k':

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
COMPUTE QTE;
	DO k=8 TO 113 by 5;
		IF _C3_ IN (1,2) THEN CALL DEFINE(k,'style','style=[background=lightgrey]');
	END;
ENDCOMP;
Dans le second cas, je n'ai pas réussi à faire de boucle, je suis obligé de passer par des référence absolues ... soit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
COMPUTE QTE;
	IF _C3_ IN (3,4,5) THEN DO;
		IF _C8_ EQ . THEN CALL DEFINE('_C8_','style','style=[background=lightpink]');
		IF _C13_ EQ . THEN CALL DEFINE('_C13_','style','style=[background=lightpink]');
	 /*... n fois ces instructions ... */
	END;
ENDCOMP;
Bon, ça fonctionne, mais il doit bien y avoir un moyen de simplifiser le code (Array ?) ... je suis preneur de toute bonne idée