javascript - 定义 js-xlsx 单元格范围

标签 javascript excel

我正在尝试使用 js-xlsx 读取 excel 值

我可以使用以下代码从工作簿工作表中获取单元格值

if(typeof require !== 'undefined') XLSX = require('xlsx');
var workbook = XLSX.readFile('test.xls');
var sheet_name_list = workbook.SheetNames;
var sheet = sheet_name_list.indexOf('sheet_name');
var sheetF48 = workbook.Sheets[sheet_name_list[sheet]]['F48'].v;

接下来我想做的是定义一个单元格范围,以便只返回那些单元格值。我已经想出通过以下方式获得工作表的引用:

var sheet1 = workbook.Sheets[sheet_name_list[sheet_name]]
var range = XLSX.utils.decode_range(sheet1['!ref']);

是否可以通过提供单元格引用来定义单元格范围?

最佳答案

我使用示例 ( https://github.com/SheetJS/js-xlsx#general-structures ),但我添加了一些代码来获取值。 这里的助记符是:s代表“范围开始”,e代表“范围结束”,r代表“行”,c代表“列”

var range = { s: { c: 0, r: 0 }, e: { c: 0, r: 4 } };//A1:A5
var dataRange = [];
/* Iterate through each element in the structure */
for (var R = range.s.r; R <= range.e.r; ++R) {
  for (var C = range.s.c; C <= range.e.c; ++C) {
    var cell_address = { c: C, r: R };
    var data = XLSX.utils.encode_cell(cell_address);
    dataRange.push(worksheet[data]);
  }
}

关于javascript - 定义 js-xlsx 单元格范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30383525/

相关文章:

javascript - 在 Angular 应用程序之外使用 Angular 过滤器

javascript - 循环访问对象时出错

vba - 类型与单元格值不匹配 "#N/A"

c# - 在通过 COM 互操作从 C# 读取单元格值期间忽略 excel vba 错误

vba - 将工作表复制到工作簿的宏在一张工作表后停止

VBA 调整 OSK.exe 窗口的大小

javascript - 使用 JavaScript/jQuery 的批量表单控件

javascript - 两个 div 同一类,仅获取该 div 的标题

javascript - 如何使用angularjs处理多页面网站?

sql-server - 如何使用 SSIS 在 Excel 中加载特定字段