const AdmZip = require('adm-zip'); const xml2js = require('xml2js'); const fs = require('fs'); const parser = new xml2js.Parser(); const builder = new xml2js.Builder(); // Замените 'path/to/your/file.xlsx' на путь к вашему Excel-файлу const zip = new AdmZip('test.xlsx'); // Загрузка workbook.xml const workbookXml = zip.readAsText('xl/workbook.xml'); parser.parseString(workbookXml, (err, result) => { if (err) throw err; // Предположим, что вы хотите удалить первый лист const sheetId = 3; // Индексация начинается с 1 result.workbook.sheets[0].sheet = result.workbook.sheets[0].sheet.filter(sheet => sheet.$.sheetId != sheetId); // Сохранение обновленного workbook.xml const updatedWorkbookXml = builder.buildObject(result); zip.updateFile('xl/workbook.xml', Buffer.from(updatedWorkbookXml, 'utf-8')); // Удаление файла листа zip.deleteFile(`xl/worksheets/sheet${sheetId}.xml`); // Сохранение измененного архива как нового Excel-файла zip.writeZip('result.xlsx'); });