一上来我先把答案压缩成一句话,ABAP2XLSX 里控制sheet打印区域,当前公开接口并没有和set_print_repeat_rows、set_print_repeat_columns对等的set_print_area方法,至少从当前公开源码可以看到,打印设置接口暴露出来的是打印标题行和标题列,而 GitHub 上关于Set print area的 enhancement 议题也一直还处在打开状态。真正稳定、而且和 Excel 文件格式本身对齐的做法,是在worksheet上创建一个本地range,把它的名字设成 Excel 内置名称_xlnm.Print_Area,再把它的值写成绝对地址,例如PRINT_AREA!$B$2:$G$20。ABAP2XLSX 在生成workbook.xml时,会把worksheet上的这些本地范围写成带localSheetId的definedName,Excel 打开文件后就会把它识别为打印区域。 (GitHub)回到