引用、访问

  1. // 遍历所有工作表
  2. // 注意: workbook.worksheets.forEach 仍然是可以正常运行的, 但是以下的方式更好
  3. workbook.eachSheet(function(worksheet, sheetId) {
  4. // ...
  5. });
  6. // 按 name 提取工作表
  7. const worksheet = workbook.getWorksheet('My Sheet');
  8. // 按 id 提取工作表
  9. const worksheet = workbook.getWorksheet(1);

下方标签颜色 tabColor

  1. worksheet.properties.tabColor = undefined ; //默认undefined

大纲(折叠)outlineLevel

  1. worksheet.properties.outlineLevelCol = 0; //列大纲
  2. worksheet.properties.outlineLevelRow = 0; //行大纲

默认行高、列宽

  1. worksheet.properties.defaultRowHeight = 15; //默认行高
  2. worksheet.properties.defaultColWidth = 10; //默认列宽

行/列数

  1. worksheet.properties.rowCount; //文档的总行数。 等于具有值的最后一行的行号
  2. worksheet.properties.actualRowCount;//具有值的行数的计数。 如果中间文档行为空,则该行将不包括在计数中。
  3. worksheet.properties.columnCount; //文档的总列数。 等于所有行的最大单元数。
  4. worksheet.properties.actualColumnCount;//具有值的列数的计数。

显示/隐藏 state

  1. // 使工作表可见
  2. worksheet.state = 'visible';
  3. // 隐藏工作表
  4. worksheet.state = 'hidden';

打印页面设置 pageSetup

image.png 和WPS里面的页面设置是一样的

  1. //页面
  2. worksheet.pageSetup.orientation = 'landscape';// 横向打印,默认是纵向portrait
  3. worksheet.pageSetup.scale = 100; //打印缩放比例,默认100%。 当 fitToPage 为 false 时激活
  4. worksheet.pageSetup.fitToPage = false; //自动适应打印页面
  5. worksheet.pageSetup.paperSize = 9; //纸张尺寸,A3是8,A4是9,A5是10
  6. worksheet.pageSetup.horizontalDpi = -1; //打印质量,水平方向
  7. worksheet.pageSetup.verticalDpi = -1; //打印质量,垂直方向
  8. worksheet.pageSetup.firstPageNumber = 1; //起始页码
  9. //页边距
  10. worksheet.pageSetup.margins = { //左右上下边距,页眉、页脚, 单位为英寸
  11. left: 0.7, right: 0.7,
  12. top: 0.75, bottom: 0.75,
  13. header: 0.3, footer: 0.3
  14. };
  15. worksheet.pageSetup.horizontalCentered = false; //工作表水平居中
  16. worksheet.pageSetup.verticalCentered = false; //工作表垂直居中
  17. //页眉、页脚,目前不支持图片
  18. worksheet.headerFooter.oddHeader = "变量表,见下"; //设置奇数页眉样式
  19. worksheet.headerFooter.oddFooter = "&位置&颜色&字体名称&字体大小&字体样式&页码信息" //设置奇数页脚样式
  20. worksheet.headerFooter.evenHeader = "第 &P 页,共 &N 页" //设置偶数页眉样式,左边例子是在中间显示第2页,共15页这样
  21. worksheet.headerFooter.evenFooter = "&Lexceljs&C&F&RPage &P" //设置偶数页脚样式,左边例子是,偶数页脚左侧为“ Exceljs”。 页脚中心的“ demo.xlsx”。 页脚右侧的“Page 2”
  22. //变量表,结合上面例子自由组合显示
  23. //&位置:&L左侧的页眉页脚;&C中心的页眉页脚;&R右侧的页眉页脚
  24. //&颜色:字体颜色,&K6位哈希值,如&K000000
  25. //&字体名称:&\"font name\",如&\"Aril\"
  26. //&字体大小:如&12
  27. //&字体样式:&B 加粗;&I 斜体;&U 下划线
  28. //&页码信息:&P 当前页面;&N 总页数;&D 当前日期;&T 当前时间;&A 工作表名称;&F 文件名称;
  29. worksheet.headerFooter.differentFirst = false; //是否首页不同
  30. worksheet.headerFooter.differentOddEven = false; //是否奇偶页不同
  31. //工作表
  32. worksheet.pageSetup.printArea = 'A1:G20'; // 设置工作表的打印区域
  33. worksheet.pageSetup.printArea = 'A1:G10&&A11:G20';// 通过使用 `&&` 分隔打印区域来设置多个打印区域
  34. worksheet.pageSetup.printTitlesRow = '1:3';// 在每个打印页面上重复特定的行,顶端标题行
  35. worksheet.pageSetup.printTitlesColumn = 'A:C';// 在每个打印页面上重复特定列,左侧标题列
  36. worksheet.pageSetup.showGridLines = false; //是否显示网格线
  37. worksheet.pageSetup.cellComments = 'none'; //批注,'asDisplayed'是如同在工作表中显示
  38. worksheet.pageSetup.errors = 'displayed'; //错误单元格打印为,'dash'--,'blank'空白,'NA'#N/A,默认是显示值
  39. worksheet.pageSetup.pageOrder = 'downThenOver'; //打印顺序,默认是先列后行;'overThenDown'是先行后列
  40. //其他
  41. worksheet.pageSetup.blackAndWhite = false; //黑白打印,默认是false

视图 views

  1. worksheet.views = [
  2. {
  3. state: 'frozen', //冻结视图,从第2列第3行开始冻结;
  4. xSplit: 2, //xSplit要仅冻结行,请将其设置为 0 或 undefined
  5. ySplit: 3, //ySplit要仅冻结列,请将其设置为 0 或 undefined
  6. showRuler:true, //视图是否显示标尺,默认是false
  7. showRowColHeaders:true, //显示或隐藏行号和列标
  8. showGridLines:true, //显示或隐藏网格线
  9. zoomScale:100, //视图缩放比例
  10. }
  11. ];

筛选 autoFilter

  1. // 将自动筛选器设置为从 A1 到 C1
  2. worksheet.autoFilter = 'A1:C1';
  3. //等价于
  4. worksheet.autoFilter = {
  5. from: 'A1',
  6. to: 'C1',
  7. }
  8. // 将自动筛选器设置为从D3到第7行第5列中的单元格
  9. worksheet.autoFilter = {
  10. from: 'D3',
  11. to: {
  12. row: 7,
  13. column: 5
  14. }
  15. }