Lancer une macro Excel depuis SAS (DDE)

Fermé
florian_sessi Messages postés 1 Date d'inscription lundi 4 février 2008 Statut Membre Dernière intervention 4 février 2008 - 4 févr. 2008 à 11:55
 oolong - 28 mai 2008 à 13:51
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

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
Il suffit de remplacer les points dans Excel par des virgules grace à la fonction commax.
1

Discussions similaires