我使用 proc report 和 ods rtf 遇到了这个问题。我想创建一个列表,其中包含很多不适合一页的列。问题是列的第二部分不会立即在下一页上打印,而是在列表的整个第一部分打印后打印。所以我没有按照我的意愿将它放在第二页上,但例如在第 15 页上,这使它看起来非常混乱。
有什么方法可以改变它吗?不知道是proc报告问题还是ods rtf问题。
预先感谢您的帮助。
尝试插入分页符:
data test0;
array vars{20} $;
do i = 1 to 100;
do j = 1 to 20;
vars{j} = put(rand('Normal'),8.4);
end;
output;
end;
run;
data test;
set test0;
pageno = ceil(_n_/37);
run;
ods rtf file='test.rtf';
proc report data=test headline nowd;
column pageno vars1 - vars20;
define pageno / order noprint;
break after pageno / page;
run;
ods rtf close;
在这个例子中,我已经确定表格的 37 行正好适合一个页面,所以我创建了pageno
它允许我在 37 行之后打破表格。当我使用proc report
时,请记住包含pageno
在您的列语句中并将其定义为order
或group
变量。使用该break
语句实际上会导致出现中断。