我正在尝试从 Excel 文件中提取数据。
它们加载得很好,但它告诉我
worksheet.eachRow
不是一个函数。我该如何解决这个问题??
const excel = require('exceljs');
function extractDataFromWorksheet(worksheet) {
const data = [];
try {
worksheet.eachRow((row, rowNumber) => {
if (rowNumber !== 1) {
const numeroComercio = row.getCell('A').value;
data.push(numeroComercio);
}
});
} catch (error) {
console.error('Error al recorrer las filas:', error);
}
return data;
}
我测试并发现它工作正常,但您没有显示如何提取工作表。 这是我的测试代码:
const ExcelJs = require('exceljs');
function extractDataFromWorksheet(worksheet) {
const data = [];
try {
worksheet.eachRow((row, rowNumber) => {
if (rowNumber !== 1) {
const numeroComercio = row.getCell('A').value;
data.push(numeroComercio);
}
});
} catch (error) {
console.error('Error al recorrer las filas:', error);
}
return data;
}
async function openWorkbook(name) {
const workbook = new ExcelJs.Workbook();
await workbook.xlsx.readFile(name);
return workbook;
}
async function test() {
const workbook = await openWorkbook('xxxx.xlsx');
// go through each sheet and process
workbook.eachSheet((worksheet, sheetId) => {
console.log(worksheet.name);
if (worksheet.name === 'xxxx') {
const data = extractDataFromWorksheet(worksheet);
console.log(data);
}
});
// or go directly to a sheet and process
const data = extractDataFromWorksheet(workbook.worksheets[1]);
console.log(data);
}
test();