我无法从Excel中提取数据

问题描述 投票:0回答:1

我正在尝试从 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;
}
javascript node.js back exceljs
1个回答
0
投票

我测试并发现它工作正常,但您没有显示如何提取工作表。 这是我的测试代码:

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();
© www.soinside.com 2019 - 2024. All rights reserved.