Introducere

Aspose.Cells FOSS pentru TypeScript își expune funcționalitatea printr-un set compact de clase de bază: Workbook, WorksheetCollection, Worksheet, Cell și Style, plus tipuri de suport pentru formatare și filtrare. Acest articol este un tur sistematic al acelei suprafețe de bază API — nu un subiect îngust, ci fundamentele pe care orice aplicație construită pe bibliotecă le folosește: deschiderea și salvarea workbooks, navigarea worksheets, citirea și scrierea valorilor și formulelor celulelor, aplicarea stilurilor, filtrarea datelor și exportul în alte formate.

Fiecare secțiune de mai jos acoperă o zonă a API cu metodele și proprietățile concrete implicate, susținută de exemple funcționale TypeScript. Scopul este să îți ofere un model mental funcțional despre cum se îmbină piesele, de la new Workbook() până la proprietățile individuale Cell.


Funcționalități cheie

Fundamentele Workbook și Worksheet

Un Workbook este fie creat gol cu new Workbook(), fie încărcat asincron dintr-un fișier existent cu Workbook.load(filePath, password). Fiecare workbook expune worksheets, un WorksheetCollection care suportă indexarea, iterarea și metode de tip array (map, filter, forEach, find, indexOf) pe lângă addWorksheet(name), removeWorksheet(index) și moveWorksheet(fromIndex, toIndex). Apelă workbook.save(filePath, options) pentru a persista modificările.

const workbook = new Workbook();

const ws1 = workbook.worksheets.addWorksheet();
const ws2 = workbook.worksheets.addWorksheet("CustomSheet1");
console.log("Total worksheets:", workbook.worksheets.length);

workbook.worksheets.removeWorksheet(1);
console.log("After delete:", workbook.worksheets.length);

console.log(
  "Names:",
  workbook.worksheets.worksheets.map((w) => w.name),
);

await workbook.save("workbook.xlsx");

Acces la celule și valori

Un Worksheet citește și scrie celule prin putValue(key, value), getCell2(key) (returnează un Cell, creându-l dacă nu există), getCell(row, col) (returnează Cell | undefined), și getCellByRef(ref). Fiecare Cell expune value, formula, row, col și ref ca proprietăți, și setFormula() / setStyle() / setHyperlink() ca metode.

const workbook = new Workbook();
const sheet = workbook.worksheets[0]!;

sheet.putValue("A1", 42);
sheet.putValue("A2", "Hello World");

const formulaCell = sheet.getCell2("A3");
formulaCell.setFormula("=A1+10");

console.log("A1 value:", sheet.getCell(0, 0)?.value);
console.log("A3 formula:", sheet.getCell(2, 0)?.formula);

const byRef = sheet.getCellByRef("A1");
console.log("Ref:", byRef?.ref, "Row:", byRef?.row, "Col:", byRef?.col);

await workbook.save("cells.xlsx");

Stil, Font, Bordură și Aliniere

Style grupează setările de font, umplere, bordură, aliniere și format numeric pentru o celulă. Citește sau înlocuiește obiectele subordonate întregi cu getFont()/setFont(), getBorder()/setBorder() și getAlignment()/setAlignment(), sau folosește setările convenabile direct pe Style, cum ar fi setFontName(), setFontSize(), setBold(), setHorizontalAlignment() și setNumberFormat(). Aplică Style finalizat unei celule cu Cell.setStyle().

const workbook = new Workbook();
const sheet = workbook.worksheets[0]!;

const style = new Style();
style.setFontName("Arial");
style.setFontSize(14);
style.setBold(true);
style.setNumberFormat("0.00");

style.getBorder().bottom = { style: "thin", color: "000000" };

style.setHorizontalAlignment("center");
style.setVerticalAlignment("center");
style.setWrapText(true);

const cell = sheet.getCell2("B2");
cell.putValue(1234.5);
cell.setStyle(style);

console.log("Bold:", style.isBold(), "Format:", style.getNumberFormat());

await workbook.save("styled.xlsx");

Filtrare automată cu clasa AutoFilter

Worksheet.setAutoFilter(range) este o scurtătură pentru cazul obișnuit, dar clasa AutoFilter de bază poate fi utilizată și direct: construiește-o cu un interval, apoi apelează addFilterColumn(col, filters, blank) pe fiecare coloană pentru a defini ce valori trebuie să rămână vizibile, sau removeFilterColumn(col) / clear() pentru a anula filtrarea.

const workbook = new Workbook();
const sheet = workbook.worksheets[0]!;

sheet.putValue("A1", "Name");
sheet.putValue("B1", "City");
sheet.putValue("A2", "Alice");
sheet.putValue("B2", "New York");
sheet.putValue("A3", "Bob");
sheet.putValue("B3", "London");

const filter = new AutoFilter("A1:B3");
filter.addFilterColumn(1, ["New York"], false);

console.log("Filter range:", filter.range);
console.log("Filter columns:", filter.columns.length);

await workbook.save("filtered.xlsx");

Exportarea în HTML, CSV, JSON și Markdown

Dincolo de .xlsx, un Workbook își poate reda direct conținutul ca text cu toHtml(), toCsv(), toJson() și toMarkdown(), sau poate fi salvat într-un fișier a cărui extensie selectează formatul prin enumerarea SaveFormat (XLSX, CSV, JSON, MARKDOWN, HTML).

const workbook = new Workbook();
const sheet = workbook.worksheets[0]!;

sheet.putValue("A1", "Name");
sheet.putValue("B1", "Age");
sheet.putValue("A2", "Alice");
sheet.putValue("B2", 25);
sheet.putValue("A3", "Bob");
sheet.putValue("B3", 30);

console.log("JSON:", workbook.toJson());
console.log("Markdown:\n", workbook.toMarkdown());

await workbook.save("report.csv");
await workbook.save("report.html");

Start rapid

git clone https://github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-TypeScript.git
cd Aspose.Cells-FOSS-for-TypeScript
npm install
npm run build
import { Workbook, Style } from "excel-cells";

const workbook = new Workbook();
const sheet = workbook.worksheets.get(0)!;
sheet.name = "Summary";

sheet.putValue("A1", "Item");
sheet.putValue("B1", "Count");
sheet.putValue("A2", "Widgets");
sheet.putValue("B2", 12);
sheet.putValue("A3", "Gadgets");
sheet.putValue("B3", 7);

const totalCell = sheet.getCell2("B4");
totalCell.setFormula("=SUM(B2:B3)");

const numberStyle = new Style();
numberStyle.setNumberFormat("0");
sheet.getCell2("B2").setStyle(numberStyle);
sheet.getCell2("B3").setStyle(numberStyle);
sheet.getCell2("B4").setStyle(numberStyle);

const detail = workbook.worksheets.addWorksheet("Detail");
detail.putValue("A1", "Raw Data");

await workbook.save("summary.xlsx");

const reloaded = await Workbook.load("summary.xlsx");
console.log("Worksheets:", reloaded.worksheets.length);
console.log("B4 formula:", reloaded.worksheets.get(0)!.getCell(3, 1)?.formula);

Formate acceptate

FormatExtensieCiteșteWrite
XLSX.xlsx✓✓
HTML.html✓✓
CSV.csv—✓
JSON.json—✓
Markdown.md—✓

Open Source și licențiere

Aspose.Cells FOSS pentru TypeScript este lansat sub licența MIT. Codul sursă este disponibil pe GitHub. Utilizarea comercială este permisă conform termenilor licenței MIT.


Începeți

Resurse conexe