标签: sheetjs

sheetjs xlsx,如何编写合并的单元格?

我需要使用 sheetjs 创建一个带有合并单元格的 xlsx。

数据

[
  {
    "id": "nick",
    "items": [
      {
        "name": "ball"
      },
      {
        "name": "phone"
      }
    ]
  },
  {
    "id": "jack",
    "items": [
      {
        "name": "pen"
      },
      {
        "name": "doll"
      }
    ]
  }
]
Run Code Online (Sandbox Code Playgroud)

我的代码:

var ws = XLSX.utils.json_to_sheet(data);
var wb = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(wb, ws, "");
var wbout = XLSX.write(wb, {bookType:'xlsx', type:'array'});
saveAs(new Blob([wbout],{type:"application/octet-stream"}), filename + ".xlsx");
Run Code Online (Sandbox Code Playgroud)

我想得到的结果:

结果

我如何得到这个结果?

... 谢谢

javascript xlsx sheetjs

15
推荐指数
1
解决办法
1万
查看次数

SheetJS xlsx-cell styling

I am referring this example to export a worksheet https://github.com/SheetJS/js-xlsx/issues/817. How to do cell styling like background coloring,font size and increasing the width of the cells to make the data fit exactly.I have gone through the documentation but couldn't find any proper examples to use fill etc.Is there a way to do the formatting?

Below is the code snippet:
    /* make the worksheet */
var ws = XLSX.utils.json_to_sheet(data);

/* add to workbook */
var wb = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(wb, ws, …
Run Code Online (Sandbox Code Playgroud)

excel xlsx angularjs sheetjs

14
推荐指数
2
解决办法
3万
查看次数

使用 sheetJS 在单个工作表中的多个表

我成功地使用了来自 sheetJS 网站示例,如下所示:

/* create new workbook */
var workbook = XLSX.utils.book_new();

/* convert table 'table1' to worksheet named "Sheet1" */
var ws1 = XLSX.utils.table_to_sheet(document.getElementById('table1'));
XLSX.utils.book_append_sheet(workbook, ws1, "Sheet1");

/* convert table 'table2' to worksheet named "Sheet2" */
var ws2 = XLSX.utils.table_to_sheet(document.getElementById('table2'));
XLSX.utils.book_append_sheet(workbook, ws2, "Sheet2");

/* workbook now has 2 worksheets */
Run Code Online (Sandbox Code Playgroud)

是否可以将多个 html 表附加到单个工作表?它们具有相同的结构。我想它可能是这样的:

/* convert 'table1', 'table2', 'table3' to single sheet named "Sheet1" */
var ws1 = XLSX.utils.table_to_sheet(document.getElementById('table1'));
var ws2 = XLSX.utils.table_to_sheet(document.getElementById('table2'));
var ws3 = …
Run Code Online (Sandbox Code Playgroud)

html javascript excel sheetjs

14
推荐指数
1
解决办法
2027
查看次数

如何向SheetJS .xlsx生成的文件添加单元格边框?

我有一个SheetJS的.xlsx生成的文件,但我一直没能投入bordercells.

我有这个:

在此输入图像描述

我需要这个:

在此输入图像描述

有没有办法做到这一点SheetJS?如果有办法应用其他单元格样式(如背景颜色),那将会很酷.

编辑:

我正在用这个功能制作纸张:

function makeSheet(wb, day){        //sheet for a specific day
    var ws = XLSX.utils.table_to_sheet(document.getElementById("table"+day));
    wb.SheetNames.push(day);
    wb.Sheets[day] = ws;
    //columns width working ok
    wb["Sheets"][day]["!cols"] = [{ wpx : 70 },{ wpx : 121 }];
    //wb["Sheets"][day]["A1"]["s"] = {"border":"1px"};  //I've tried this but doesn't work
  return wb;
}
Run Code Online (Sandbox Code Playgroud)

编辑2

我创建了这个示例代码段,如果你可以在这里放置边框和/或其他单元格样式,那将是一个胜利:

$(document).ready(myMain);
function myMain(){
  $(document).on("click","#btnexcel", function(){makeExcel()});
}
function s2ab(s) {
  var buf = new ArrayBuffer(s.length);
  var view = new Uint8Array(buf);
  for …
Run Code Online (Sandbox Code Playgroud)

javascript sheetjs

11
推荐指数
1
解决办法
3915
查看次数

SheetJS json_to_sheet 重命名标题

我有一个对象数组。默认情况下, sheet_to_json 使用对象键作为标题。但是,我需要在不显式修改对象数组的情况下重命名这些标题。

这可能吗?

javascript sheetjs

11
推荐指数
4
解决办法
1万
查看次数

如何使用 JavaScript 解析和迭代 Excel 工作表文件中的所有行

我正在尝试解析和读取 Excel 工作表中的每个单元格;看来我正在解析文件,但我无法遍历每个单元格并显示它们。

我正在使用以下代码:

    var workbook = XLSX.read('datasets/persons.xlsx', { type: 'binary' });
    var sheet_name_list = workbook.SheetNames;


    // console.log(sheet_name_list);
    sheet_name_list.forEach(function (y) { /* iterate through sheets */
      //Convert the cell value to Json
      console.log(y);
      var roa = XLSX.utils.sheet_to_json(workbook.Sheets[y]);
      console.log(roa);
      if (roa.length > 0) {
        result = roa;
      }
  });
Run Code Online (Sandbox Code Playgroud)

当我尝试打印时,我得到一个空数组console.log(roa),知道我应该如何迭代文件中的每个单元格吗?

javascript sheetjs

8
推荐指数
1
解决办法
1万
查看次数

如何使用 SheetJS 冻结 Excel 表格中的窗格?

我使用SheetJS在我的 node.js 应用程序中创建一个 Excel 表格:

const xlsx = require('xlsx');

const workbook = xlsx.utils.book_new();
const worksheet = xlsx.utils.aoa_to_sheet([
    ['Number', 'Name', 'Value'],
    [1, 'Bill', 1500],
    [2, 'John', 2300]
]);
xlsx.utils.book_append_sheet(workbook, worksheet, 'Accounts');
xlsx.writeFile(workbook, 'output.xlsx');
Run Code Online (Sandbox Code Playgroud)

如何冻结表格的一个窗格,例如第一行?说“冻结”我的意思是使行和/或列始终保留在表查看器界面的顶部。

javascript sheetjs

8
推荐指数
1
解决办法
3379
查看次数

如何使用 xlsx npm 包写入特定单元格

我必须向我的 xlsm 文件中的特定单元格(例如 D4 单元格)写入一个值。我可以看到选项

XLSX.writeFile(workbook, 'out.xlsx');
Run Code Online (Sandbox Code Playgroud)

XLSX 包文档中(编写函数)

但是我没有看到任何将值写入特定单元格的内容(需要写入的值应该在哪里传递?)。或者,它不如提供的读取特定单元格值的示例那么清楚。如果有人能给我提供一个简单的代码片段示例,我会很高兴。

这是我读取特定单元格值的方式:

if(typeof require !== 'undefined') XLSX = require('C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\xlsx');
var workbook = XLSX.readFile('xlsm');
var first_sheet_name = workbook.SheetNames[0];
var address_of_cell = 'D5';
var worksheet = workbook.Sheets[first_sheet_name];
var desired_cell = worksheet[address_of_cell];
desired_value = (desired_cell ? desired_cell.v : undefined);
console.log('Cell Value is: '+ desired_value);
Run Code Online (Sandbox Code Playgroud)

npm jasmine protractor js-xlsx sheetjs

8
推荐指数
2
解决办法
1万
查看次数

SheetJS 如何从 json 创建工作表并将其保存为缓冲区

文档对我来说似乎很混乱。如何从对象数组创建文档,每个对象代表一行并将其保存为缓冲区?

xlsx node.js sheetjs

8
推荐指数
1
解决办法
6758
查看次数

使用 React 和 SheetJS 导出到 excel

我正在尝试使用 React 和 SheetJs 库实现导出到 excel。看起来我可以下载它,但实际输出看起来不像预期的那样。我接收对象数组并使用XLSX.utils.json_to_sheet([data])API 将 JS 对象数组转换为工作表。问题是: 在此处输入图片说明

我在这里复制了它

javascript spreadsheet export-to-excel reactjs sheetjs

7
推荐指数
1
解决办法
9301
查看次数