问题标签 [js-xlsx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1147 浏览

javascript - 无法将excel文件中的空单元格读取到二维数组

代码工作正常,除了单元格为空的地方,空单元格被忽略。我知道有

  • 解决方案 1 .Condition "if(h===undefined)continue;" 在“xlsx.core.min.js”中将其注释掉。

  • 解决方案 2。通过在运行此 XLSX.utils.sheet_to_json(wb.Sheets[name] , {blankCell : false}) 时传递 Condition 额外参数。在第号行添加条件。19150 “如果(defval === undefined && blankCell)继续;” 在文件 xlsx.js 等中。

但是我的项目中没有“xlsx.core.min.js”文件,而且我不能细化一行。19150 为解决方案 2 添加代码,而且我没有创建 JSON 对象。

我的代码:

0 投票
1 回答
1495 浏览

javascript - 使用超链接字段导出到 Excel

我正在将一些数据导出到 excel 中,如下所示:-

现在我想将其中一个字段作为超链接,这样当用户打开 Excel 工作表时,他/她可以单击超链接并重定向到该站点。

这个组件可以吗?有人做过类似的事情吗?

感谢您的帮助和时间

0 投票
1 回答
561 浏览

xlsx - SheetJS不导出完整的十进制值

我正在尝试使用 SheetJS 将 json 数据导出到 csv 文件。json是这样的:

导出的功能如下:

但是当它导出到 csv 文件时,小数点不完整。csv 文件显示

为什么 SheetJS 会截断小数点?如何导出完整的十进制值?

* 更新 * 看起来,如果我将数据导出为 .xlsx,我会得到所有的十进制值。但如果我导出为 .csv,我会得到不完整的十进制值。

0 投票
0 回答
969 浏览

javascript - 如何从 Web Worker 下载文件?

在项目(在 Angular4.3 上编写)中,我们使用xlsx创建 xlsx/csv 表以供用户下载。我们面临的问题是当我们尝试导出大量数据时,原始的json文件可以是100+Mb,转换后的xlsx/csv文件可以是28Mb,而所有这些转换操作都是在客户端处理的,它使用了所有资源在主线程上。我尝试添加 web wroker 以将所有进程移动到另一个线程,当尝试从 wroker 下载创建的文件时出现错误:

export.worker.bundle.js:2 未捕获的错误:无法保存文件 test.xlsx

通过单击添加工作人员的示例代码:

工人代码:

XLSX.writeFile(wb, filename, write_opts) 尝试将 wb 写入文件名。在基于浏览器的环境中,它将尝试强制客户端下载。

这一行XLSX.writeFile尝试开始下载,但它失败了,而且据我所知,此操作正在从线程中获取所有资源。

是否可以从工作人员开始文件下载?还是我需要回到主线程?

0 投票
2 回答
218 浏览

javascript - sheetJS:当您想将毫秒转换为 h:mm 时,单元格对象应该如何显示?

当您想以毫秒为单位将值转换为 h:mm 的持续时间格式时,是否有人知道单元格对象的外观?

目前我有一个看起来像 { t: 'n', v: value, z: 'h:mm' } 但它没有显示正确的小时和分钟的单元格对象。

0 投票
1 回答
1487 浏览

javascript - 如何从前端的后端下载excel文件?

我想启动在我的后端生成的 excel 文件的浏览器下载,但我不知道如何传递这种响应。

我一直在尝试在前端创建 excel,但由于我认为数据量很大,chrome 内存不足。我也尝试过传递缓冲区,但我得到的文件似乎已损坏。

0 投票
1 回答
52 浏览

angular - 从服务返回的值未转移到组件

我有一个解析 Excel 文件的 Angular 服务,它看起来像这样:

如您所见,我正在尝试返回 this.data 的值。但是,当我尝试在组件中访问此值时,我存储该值的变量返回未定义。

parser 是引用服务的私有类。控制台日志excelContents在控制台中产生 undefined 即使我认为它现在应该采用服务函数的返回值。我在这里遗漏了一些明显的东西吗?

0 投票
1 回答
409 浏览

syncfusion - 我们可以将 XLSX 和 Syncfusion 库与 LWC 集成吗

我们有一些自定义要求,可以使用自定义和条件单元格样式将数据导出到 Excel 中。我们探索了两个库(xlsxjs 和 syncfusion),想知道它是否与 salesforce Lightning Web Components 兼容。
请建议是否有任何其他方法可以在没有提到的库的情况下实现相同的目标。
导出时预期的 excel 文件的 PFA 示例。在此处输入图像描述

0 投票
1 回答
159 浏览

javascript - Javascript将短日期数字转换为javascript日期

我有一个.xlsx文件,其中有一个包含日期的表格。当我将表格读入 javascript(使用 xlsx nodejs 包)时,日期被格式化为数字。我想将这些数字转换为日期。例如,数字 43527 应该是日期 13/03/2019。我已经尝试过new Date(43527*60*60*24*1000),但这给出了错误的答案2089-03-04T00:00:00.000Z

0 投票
1 回答
709 浏览

node.js - 如何通过Javascript重新计算excel文件中的所有公式?

我正在尝试创建一个 Web 应用程序来打开网页上的 excel 文件,为此我正在使用“xlsx”模块。

问题是当我通过“xlsx”模块修改任何内容时。工作表公式不刷新。

例如,A1 = 2,B1 = 2,C1 = sum(A1:B1) = 4。现在如果我将 A1 编辑为 3,C3 不会更改为 5。

这是保存前的对象格式:

简短说明:这只是一个小示例代码。在实际项目中,几乎不可能在保存阶段手动计算所有公式。

而且,如果我必须在 C3 处带 5,那么我需要在 excel 中打开该文件并再次更改 A1 或 B1。有什么方法可以刷新“xlsx”中的所有公式单元格。所以所有的公式都会重新计算。