0
ods listing close;
ods tagsets.excelxp file='Y:\fonts\CC_ACQ_fonts_v2_har.xls' style=sasweb
options(sheet_name="CC_ACQ_JUN12_V2");
proc report data=work.matrix_input nowd
 style(report)={font_face=times font_size=1 font_weight=bold bordercolor=black}
 style(header)={font_face="Times New Roman" font_size=8pt  font_face=times    cellwidth=1in background=gray foreground=black font_weight=bold bordercolor=black  }
 style(column)={font_face="Times New Roman" font_size=8pt 
         just=center cellheight=15in font_face=times};
 column CELL offer_description pop product;
 run;
ods tagsets.excelxp close;
ods listing;

知道excel中的第一列是CELL 知道上面的CELL(列名)我想写BY:CELL(在另一个单元格中)和上面的offer_description pop产品(3列)我想写TOTAL Consildate Mail),以绿色为背景

4

1 回答 1

0

这应该有效。基本上,您使用 ACROSS 变量来获取第二个标题,然后您必须放入一个非打印虚拟列才能使事情正常运行(您不能完全拥有 ACROSS 变量)。您可以使用样式声明添加颜色。如果您使用 PROC TEMPLATE 定义样式,您的代码将看起来更清晰,这样您就可以使用样式继承而不是一遍又一遍地重写您的样式。

data class;
set sashelp.class;
total='Total Consolidated';
namedummy='By Name';
dummy=' ';
run;

ods listing close;
ods tagsets.excelxp file='c:\temp\test.xml' style=sasweb
options(sheet_name="CC_ACQ_JUN12_V2");
proc report data=class nowd
 style(report)={font_face=times font_size=1 font_weight=bold bordercolor=black}
 style(header)={font_face="Times New Roman" font_size=8pt  font_face=times    cellwidth=1in background=gray foreground=black font_weight=bold bordercolor=black  }
 style(column)={font_face="Times New Roman" font_size=8pt 
         just=center cellheight=15in font_face=times};
 column dummy namedummy,name total,(age height weight);
define total/' ' across style={font_face="Times New Roman" font_size=8pt  font_face=times    cellwidth=1in background=green foreground=black font_weight=bold bordercolor=black };
 define namedummy/' ' across;
 define dummy/noprint;
 run;
ods tagsets.excelxp close;
ods listing;
于 2012-09-05T13:24:54.477 回答