Bonjour,

J'essaye de faire une boucle pour classifier en fonction de mot clés.
Les mots clés se trouvent dans la macro-variable "Informatique_decisionnelle".

Mon code ci-après tourne, par contre il ne complète 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
%let Informatique_decisionnelle=business intelligence-business object-cognos-SAS-SPSS-STAT-R-Hadoop;
%let nbmots = %sysfunc(countw(&Informatique_decisionnelle));

%macro find1;

		%do i=1 %to &nbmots;
			%let expression=%scan(&Informatique_decisionnelle,&i,'-');
			data table; set table;
					%if %index(nomProjet,"&expression")>0 %then %do;
					categorie1="Informatique";
					categorie2="Informatique décisionnelle";
					%end;
			run;
		%end;

%mend;

%find1;
J'ai essayé le code sur la même logique sans boucle ça marche :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
%let Informatique_decisionnelle=business intelligence-business object-cognos-SAS-SPSS-STAT-R-Hadoop;


%let expression=%scan(&Informatique_decisionnelle,4,'-');

data table; set table;

		if index(nomProjet,"&expression")>0 then do;
		categorie1="Informatique";
		categorie2="Informatique décisionnelle";
		end;

run;
Est-ce que quelqu'un aurait une idée d'où peut venir le problème ? Ou s'il y a une meilleure manière de procéder ?

Merci d'avance pour votre aide.