4

Excel 2010 で SAS からマクロを実行できません。一部の SAS テーブルから Excel にデータをエクスポートしていますが、これは正常に動作します。VBA マクロを手動で実行すると、本来の動作も実行されますが、自動的に実行されません。Excel ファイルは「FIH.xls」と呼ばれ、マクロは Module1 として「Opryd」と呼ばれます。SAS ログにエラーはありません。Excel にもエラーはありません。Excel の設定ですべてのマクロの実行を許可しました。それでも実行しません。

options noxwait noxsync;
x '"C:\FIH.xls"';
/* Putting SAS in sleep mode to give Excel the necessary time to open the file */
data _null_; x=sleep(5);
run;

FILENAME excel DDE 'EXCEL|Grp!r5c8:r7c20' notab;
    DATA _NULL_;
   SET gem.rap_konc_selskab;
    FILE excel;
    PUT '09'x selskab_rap '09'x gr_vis_start '09'x man_amt '09'x '09'x '09'x rest_2 '09'x ;
    RUN;
data _null_;
file excel;
put '[run ("FIH.xls!Opryd")]';
run;
4

2 に答える 2

1

The problem is that you're putting the run(...) to the workbook itself and not the Excel application.

You need a 2nd fileref which you use for your run(...) command :

filename cmdexcel dde 'excel|system' ;
data _null_;
  file cmdexcel;
  put '[run("FIH.xls!Opryd")]'; /* no space between run and ( */
run;
filename cmdexcel clear ;
于 2013-09-23T10:24:53.223 に答える