Arbeiten mit Excel in TypeScript: Bibliotheken, Beispiele und Tools

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Arbeiten mit Excel in TypeScript: Bibliotheken, Beispiele und Tools



TypeScript ist eine leistungsstarke Sprache für die Entwicklung von Webanwendungen, und oft besteht die Notwendigkeit, programmatisch mit Excel-Dateien zu arbeiten: Berichte lesen, Tabellen generieren, Daten exportieren. In diesem Artikel betrachten wir die drei wichtigsten Bibliotheken für die Arbeit mit Excel in TypeScript, ihre Funktionen und geben praktische Beispiele.



1. Wichtigste Bibliotheken für die Arbeit mit Excel in TypeScript



Es gibt mehrere beliebte Lösungen, jede mit ihren eigenen Stärken:



  • ExcelJS – die beliebteste Bibliothek zum Lesen, Schreiben und Gestalten von Excel-Dateien. Unterstützt .xlsx, .xlsm, .csv sowie die Arbeit mit Formeln, bedingter Formatierung und Bildern.
  • xlsx (SheetJS) – eine leichte und schnelle Bibliothek für grundlegende Operationen: Lesen und Schreiben von Tabellendaten. Ideal für einfache Aufgaben.
  • excel4node – eine Bibliothek zum Erstellen von Excel-Dateien mit Schwerpunkt auf Leistung und Unterstützung von Stilen.


2. Installation und Einrichtung



Verwenden Sie npm, um die gewählte Bibliothek zu installieren. Betrachten wir die Installation von ExcelJS und xlsx:



npm install exceljsnpm install xlsx


Installieren Sie für TypeScript zusätzlich die Typen (für xlsx sind sie integriert):



npm install @types/exceljs --save-devnpm install @types/node --save-dev


3. Arbeiten mit Excel über ExcelJS



3.1 Erstellen und Schreiben einer Datei



Erstellen wir eine neue Excel-Datei mit Überschriften und Daten:



import * as ExcelJS from 'exceljs';

async function createExcel() { const workbook = new ExcelJS.Workbook(); const worksheet = workbook.addWorksheet('Daten');

// Spalten definieren worksheet.columns = [ { header: 'Name', key: 'name', width: 25 }, { header: 'Alter', key: 'age', width: 10 }, { header: 'Stadt', key: 'city', width: 20 } ];

// Zeilen hinzufügen worksheet.addRow({ name: 'Anna', age: 28, city: 'Moskau' }); worksheet.addRow({ name: 'Ivan', age: 35, city: 'Sankt Petersburg' }); worksheet.addRow({ name: 'Olga', age: 22, city: 'Kasan' });

// Überschriften gestalten const headerRow = worksheet.getRow(1); headerRow.font = { bold: true, color: { argb: 'FFFFFFFF' } }; headerRow.fill = { type: 'pattern', pattern: 'solid', fgColor: { argb: 'FF4472C4' } };

// Datei speichern await workbook.xlsx.writeFile('example.xlsx'); console.log('Datei erstellt');}

createExcel();


3.2 Lesen einer vorhandenen Datei



Lesen wir die Daten aus der zuvor erstellten Datei:



async function readExcel() {  const workbook = new ExcelJS.Workbook();  await workbook.xlsx.readFile('example.xlsx');

const worksheet = workbook.getWorksheet('Daten'); if (!worksheet) return;

worksheet.eachRow((row, rowNumber) => { const rowData = row.values as any[]; console.log(`Zeile ${rowNumber}: ${rowData.join(', ')}`); });}

readExcel();


4. Arbeiten mit Excel über xlsx (SheetJS)



4.1 Daten lesen



Die Bibliothek xlsx ermöglicht das schnelle Lesen von Daten aus einer Datei:



import * as XLSX from 'xlsx';

function readXlsxFile(filePath: string) { const workbook = XLSX.readFile(filePath); const sheetName = workbook.SheetNames[0]; const worksheet = workbook.Sheets[sheetName]; const data = XLSX.utils.sheet_to_json(worksheet); console.log(data);}

readXlsxFile('example.xlsx');


4.2 Erstellen und Schreiben



Erstellen wir eine einfache Excel-Datei aus einem Array von Objekten:



function createXlsx() {  const data = [    { Name: 'Anna', Alter: 28, Stadt: 'Moskau' },    { Name: 'Ivan', Alter: 35, Stadt: 'SPb' }  ];

const worksheet = XLSX.utils.json_to_sheet(data); const workbook = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(workbook, wor

Empfehlungen