当电子表格列的数据比较长的时候,我们希望列是可以根据单元格数据进行自适应。可以通过写服务器宏来实现电子表格列宽自适应
加载前效果:
加载后效果:
具体实现步骤如下
1、首先在电子表格设计器(Microsoft Office Excel)中,创建一张电子表格报表。
2、在浏览器的资源定制节点下,选中电子表格,右键选择 编辑宏 进入报表宏界面。
3、在报表宏界面新建服务端模块。在弹出的新建模块对话框中,选择对象为spreadsheetReport、事件为onBeforeOutput,并把下面宏代码复制到代码编辑区域。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function main(spreadsheetReport) { var sheet = spreadsheetReport.workbook.worksheets.get(0); if (sheet === "" || sheet === null) { return; } var counts = sheet.cells.maxDisplayRange.columnCount; //获取电子表格列数 sheet.autoFitColumns(0, counts); //从0开始,到counts列结束。 //sheet.autoFitColumn(3); //只对某列进行自适应,第一列为0
} |
示例资源:电子表格列宽自适应.xml
当电子表格列的数据比较长的时候,我们希望列是可以根据单元格数据进行自适应。可以通过写服务器宏来实现电子表格列宽自适应
加载前效果:
加载后效果:
具体实现步骤如下
1、首先在电子表格设计器(Microsoft Office Excel)中,创建一张电子表格报表。
2、在浏览器的资源定制节点下,选中电子表格,右键选择 编辑宏 进入报表宏界面。
3、在报表宏界面新建服务端模块。在弹出的新建模块对话框中,选择对象为spreadsheetReport、事件为onBeforeOutput,并把下面宏代码复制到代码编辑区域。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function main(spreadsheetReport) { var sheet = spreadsheetReport.workbook.worksheets.get(0); if (sheet === "" || sheet === null) { return; } var counts = sheet.cells.maxDisplayRange.columnCount; //获取电子表格列数 sheet.autoFitColumns(0, counts); //从0开始,到counts列结束。 //sheet.autoFitColumn(3); //只对某列进行自适应,第一列为0
} |
示例资源:电子表格列宽自适应.xml