Bonjour à tous,

j'aurais besoin d'avis éclairés concernant un problème devant lequel je ne trouve pas de solution simple.

J'ai créé une table qui me permet d'obtenir un calcul différentiel entre plusieurs variables 'identiques' d'une semaine sur l'autre.

J'ai utilisé des macros programmes simples pour réalisé ces calculs. Maintenant, j'ai bien mes montants différentiels pour chacune de ses variables:

Nom : exemple data2.jpg
Affichages : 74
Taille : 66,5 Ko

Je cherche à faire apparaitre les entrées/sorties en terme financier sur chacun de ces clients pour la semaine, c'est à dire que, si le montant est négatif pour la différence sur un trimestre donné, la variable calculée est incrémentée par la valeur de la différence et cela pour chaque trimestre du client. En ce qui concerne les montants de différences positifs, ils sont sommés dans les entrées.

J'ai pensé utiliser un DO WHILE mais je ne maitrise pas la notion et je ne m'en sors pas. En sas base, ce serait super long, il faudrait tester chaque possibilité et ça me ferait un code à rallonge à mon avis.

Je n'ai, en tout cas, rien de vraiment évident qui me vient à l'esprit...

Voici le morceau de code que j'ai écrit et qui ne me donne absolument rien:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
data ent_sor;
set calc_comptes;
 
%macro calcb;
 
%do m = &annee_3. %to &annee.;
%do n = 1 %to 4;
 
do while (diff_solde_&m.T&n.< 0) ; sortie=sum(diff_solde_&m.T&n.);  end;
 
 
 
%end;
%end;
 
%mend calcb;
%calcb
 
run;
Si vous avez une astuce, je suis preneur.

Je vous en remercie par avance.