Sas ods excel和proc模板
在通过Sas ods excel和proc模板,sas,sas-ods,Sas,Sas Ods,在通过ods模板定义名为excel的样式后,尝试使用ods-excel时遇到错误。我想知道是否有人能解释为什么会发生这种情况,因为我认为ods样式和ods目的地是两个完全不同的东西 以下ods excel语句工作正常: ods excel file="%sysfunc(pathname(work))\x.xlsx"; proc print data=sashelp.class; run; ods excel close; 但是如果我在运行下面的proc模板code之后尝试运行它,我会得到一个错
ods模板定义名为excel
的样式后,尝试使用ods-excel
时遇到错误。我想知道是否有人能解释为什么会发生这种情况,因为我认为ods样式和ods目的地是两个完全不同的东西
以下ods excel
语句工作正常:
ods excel file="%sysfunc(pathname(work))\x.xlsx";
proc print data=sashelp.class;
run;
ods excel close;
但是如果我在运行下面的proc模板
code之后尝试运行它,我会得到一个错误
proc template;
define style excel;
parent=styles.htmlblue;
class graph / attrpriority='none';
style graphdata1 / contrastColor=#416FA6 markersymbol='circlefilled';
style body from body / pagebreakhtml=_undef_; * REMOVE THE HORIZONTAL RULE;
end;
run;
ods excel file="%sysfunc(pathname(work))\x.xlsx";
proc print data=sashelp.class;
run;
ods excel close;
错误是:
ERROR: Could not find method.
ERROR: No body file. EXCEL output will not be created.
我可以将我的样式重命名为excel
以外的其他样式来解决这个问题,但我不明白为什么会发生这种情况。有人能解释吗?谢谢。从评论中,谢谢@Tom:
使用ods styles.excel
而不是ods excel
:
ods styles.excel file="%sysfunc(pathname(work))/x.xlsx";
proc print data=sashelp.class;
run;
ods styles.excel close;
错误是否来自PROC模板?还是程序打印?另外,我没有看到任何使用新样式的尝试。@tom我相信错误来自于ods excel
语句。正确-无需尝试使用新样式即可触发错误。我可以确认这会导致错误,但不确定原因。在9.4M6中测试如果使用styles.excel
而不是excel
作为路径名会发生什么情况?@Tom Yup-这就解决了问题。如果你把它作为回答,我会接受的。我猜在完全限定的情况下,它避免了某种命名冲突。