如何改善此功能,使其覆盖Excel单元格?

时间:2018-08-28 14:32:40

标签: javascript excel exceljs

我正在使用以下代码尝试覆盖Excel中的单元格:

462042 airflow 20 0 282632 91120 10544 S 1.7 0.3 0:02.66 /usr/bin/python /usr/bin/airflow run example_bash_operator runme_1 2018-08-29T07:39:48.193735+00:00 --local -sd /usr/lib/python2.7/site-packages/apache_airflow-1.10.0-py2.7.egg/airflow/example_dags/example_bash_operator.py

我可以将数据记录到控制台,但是Excel文件保持不变。

任何帮助都会很棒,谢谢。

1 个答案:

答案 0 :(得分:0)

功能参数rowcell可能是与workbook相关的对象?但是,它们将在您编写文件的匿名函数范围内失去此连接。 (从技术上讲,JavaScript按值而不是按引用将变量传递给函数。)

而是传递查找单元格所需的信息,并在函数中本地获取它:

function readExcelFile(workbook, worksheetName, rowIndex, columnIndex, newData) {
    workbook.xlsx.readFile('H://filename.xlsm')
        .then(function () {
            worksheet = workbook.getWorksheet(worksheetName);
            row = worksheet.getRow(rowIndex);
            cell = row.getCell(columnIndex);
            cell.value = newData;
            row.commit();
            return workbook.xlsx.writeFile('H://newFile.xlsx');
        });
}

readExcelFile(my_workbook, "My Worksheet", 3, 3, 34232);