1

我使用 proc report 和 ods rtf 遇到了这个问题。我想创建一个列表,其中包含很多不适合一页的列。问题是列的第二部分不会立即在下一页上打印,而是在列表的整个第一部分打印后打印。所以我没有按照我的意愿将它放在第二页上,但例如在第 15 页上,这使它看起来非常混乱。

有什么方法可以改变它吗?不知道是proc报告问题还是ods rtf问题。

预先感谢您的帮助。

4

1 回答 1

0

尝试插入分页符:

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在您的列语句中并将其定义为ordergroup变量。使用该break语句实际上会导致出现中断。

于 2015-11-25T20:24:38.410 回答