Lancer une macro Excel depuis SAS (DDE)

florian_sessi Messages postés 1 Statut Membre -  
 oolong -
Bonjour,

Je découvre le langage DDE depuis quelques jours et je suis un modèle qui me permet d'automatiser des sorties de tables SAS sous Excel dans une feuille. Dans une autre, bien mise en forme, les données sont reprises et bien présentées.
Ce qui me pose problème est que certains chiffres de la table SAS comportent des points (et non des virgules) et du coup, les formules Excel ne sont plus possibles entre mes feuilles.

Ainsi, je souhaiterai pouvoir créer une macro dans Excel qui remplacerait le caractère "." (point) par le caractère "," (virgule) dans mon lasseur Excel.

Ma question est donc :
COmment appelle t-on une macro Excel directement depuis un programme SAS via le langage DDE?

Merci d'avance de vos réponse,

Florian

2 réponses

oolong
 
filenema cmd DDE 'EXCEL|SYSTEM";
options noxwait noxsync;

data _null_;
rc=system('start excel');
run;

data _null_;
file cmds;
put "[open(" chemin et nom du fichier excel")];
run;

data _null_;
file cmds;
put '[RUN("nom de la macro")]';
run;

data _null_;
file cmds ;
put "[Quit()]";
run;
2
véro
 
Il suffit de remplacer les points dans Excel par des virgules grace à la fonction commax.
1