首页 > 解决方案 > Angular-5:使用 sheetJS 隐藏 excel 文件的网格线并应用单元格样式

问题描述

我正在尝试使用 Angular-5 中的 sheetJS 导出自定义 excel 文件,但是面对两个问题,任何人都可以帮助我解决这些问题。
谢谢

  • 如何隐藏/删除工作簿工作表中的网格线
  • 单元格样式不适用于字体大小、颜色等。

这是导出文件的代码

export class AppComponent {

  jsonData: any = [];

  export(): void {
    /* generate worksheet */
    const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet(this.jsonData);

    // add style (but not working) and value to A1 cell
    ws['A1'] = {
      v: 'AI cell value',
      s: {
        font: { size: 20, bold: true, color: "#FF00FF" },
        "!merges": [
          { s: { r: 0 } } /* A1 */
        ]
      }
    };

    /* generate workbook and add the worksheet */
    const wb: XLSX.WorkBook = XLSX.utils.book_new();
    XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');

    /* save to file */
    XLSX.writeFile(wb, "demo.xlsx");
  }
}

这是所需的excel文件格式

所需的 Excel 文件图像

标签: excelangularxlsxsheetjs

解决方案


您不能在 excel 中隐藏网格线,但添加背景颜色会使它们不可见,除非设置了轮廓。将此添加到您的脚本中即可:

Range("A1").Interior.ColorIndex = 2
  • 将 37 替换为您要查找的颜色的索引值。白色是2。
  • 将 A1 替换为工作表的可见范围(即“A1:ZZ999”)。

祝你好运!


推荐阅读