У меня есть электронное приложение, в котором мне нужно читать данные из файла Excel и записывать измененные данные. Мне также нужно сохранить форматирование файла Excel.
Файл Excel, который я использую, создан с помощью продукта Excel в подписке Microsoft 365 для бизнеса, версия 2005, сборка 12827.20268.
Я прочитал рекомендации по SO и решил попробовать [email protected]. Проблема в том, что эта библиотека выдает ошибку при попытке сохранить.
Вот пример кода, который я использую:
modifyExcel(): void {
// create a workbook variable
const workbook = new Excel.Workbook();
// read excel file from the path
workbook.xlsx.readFile(this.excelFile)
.then(() => {
// access the excel sheet
const worksheet = workbook.getWorksheet('My Sheet');
const rowValues = ['Case 1', 'case 1 file', '', 2, 3, 4, 5];
worksheet.addRow(rowValues);
workbook.xlsx.writeFile(this.excelFile)
.then(() => {
// eslint-disable-next-line no-console
console.log('saved to excel file successfully');
});
});
}
Когда я выполняю код, я получаю исключение:
exceljs.min.js?e8ae:3 Uncaught (in promise) TypeError: Cannot read property 'F_OK' of undefined
at eval (exceljs.min.js?e8ae:formatted:46534)
at new Promise (<anonymous>)
at Object.exists (exceljs.min.js?e8ae:formatted:46532)
at eval (exceljs.min.js?e8ae:formatted:56173)
at u (exceljs.min.js?e8ae:formatted:56173)
at Generator.eval [as _invoke] (exceljs.min.js?e8ae:formatted:56173)
at Generator.forEach.e.<computed> [as next] (exceljs.min.js?e8ae:formatted:56173)
at n (exceljs.min.js?e8ae:formatted:56173)
at s (exceljs.min.js?e8ae:formatted:56173)
at eval (exceljs.min.js?e8ae:formatted:56173)
Я отладил код, и исключение возникает в строке записи файла.
workbook.xlsx.writeFile(this.excelFile)
Кто-нибудь видел что-нибудь подобное? Если да, то каково было ваше решение.