Introducció
Aspose.Cells FOSS per a TypeScript ofereix un conjunt complet de funcions de gestió de fulls de càlcul més enllà de la lectura/escriptura bàsica de cel·les. Els desenvolupadors poden aplicar estils detallats, establir regles de validació de dades, configurar filtres automàtics, afegir formatació condicional, crear gràfics, inserir formes i protegir llibres de treball – tot des del codi TypeScript sense cap dependència de Microsoft Office.
Aquest article recorre les principals capacitats de gestió de fulls de càlcul disponibles a la biblioteca, amb exemples de codi funcionals per a cada àrea de funcionalitat.
Característiques clau
Validació de dades
Afegeix regles de validació als rangs de cel·les utilitzant la classe DataValidation. Els tipus de validació compatibles inclouen llista, interval numèric i fórmules personalitzades. Aplica la validació a qualsevol rang amb worksheet.addDataValidation().
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
const validation = new DataValidation();
validation.type = "list";
validation.formula1 = '"Option1,Option2,Option3"';
worksheet.addDataValidation(validation, "B1:B10");
await workbook.save("validated.xlsx");
Filtre automàtic
Habilita les capçaleres d’auto‑filtre en un interval de dades amb worksheet.setAutoFilter(). Això afegeix controls de filtre desplegables a les capçaleres de columna al fitxer XLSX de sortida. Elimina els filtres amb worksheet.removeAutoFilter().
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Name");
worksheet.putValue("B1", "Age");
worksheet.putValue("C1", "City");
worksheet.putValue("A2", "Alice");
worksheet.putValue("B2", "25");
worksheet.putValue("C2", "New York");
worksheet.putValue("A3", "Bob");
worksheet.putValue("B3", "30");
worksheet.putValue("C3", "London");
worksheet.setAutoFilter("A1:C4");
await workbook.save("filtered.xlsx");
Format condicional
Aplica regles visuals a intervals de cel·les utilitzant ConditionalFormatCollection. La biblioteca admet ColorScaleRule, DataBarRule i IconSetRule per ressaltar cel·les segons els seus valors.
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
for (let i = 1; i <= 10; i++) {
worksheet.putValue(`A${i}`, i * 10);
}
await workbook.save("conditional.xlsx");
Enllaços i comentaris
Adjunteu hiperenllaços a les cel·les amb cell.setHyperlink() que admeten URL, adreces de correu electrònic i referències internes a fulls. Afegiu comentaris amb worksheet.addComment() utilitzant objectes Comment.
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Click here");
worksheet.getCell2("A1").setHyperlink("https://www.example.com");
worksheet.putValue("A3", "Send email");
worksheet.getCell2("A3").setHyperlink("mailto:test@example.com");
await workbook.save("hyperlinks.xlsx");
Protecció del llibre de treball i de les cel·les
Protegiu tots els llibres de treball amb una contrasenya utilitzant workbook.protect(). Bloquegeu cel·les individuals amb style.setLocked(true) i controleu la visibilitat de les fórmules amb style.setHidden().
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Protected Cell");
const style = new Style();
style.setLocked(true);
style.setHidden(false);
worksheet.getCell2("A1").setStyle(style);
workbook.protect(true, "password");
await workbook.save("protected.xlsx");
Mida de columnes i files
Estableix l’amplada de les columnes amb worksheet.setColumnWidth() i l’alçada de les files amb worksheet.setRowHeight(). Amaga les files amb worksheet.setRowHidden(). Aquesta configuració persisteix al fitxer XLSX desat.
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Wide Column");
worksheet.setColumnWidth(0, 30);
worksheet.setRowHeight(0, 25);
await workbook.save("sized.xlsx");
Inici ràpid
Instal·la amb npm:
npm install @aspose/cells@1.0.0
Creeu un llibre de treball amb estil, validació i filtre automàtic:
import { Workbook, Style, DataValidation } from "@aspose/cells";
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Status");
worksheet.putValue("B1", "Value");
const headerStyle = new Style();
headerStyle.setBold(true);
worksheet.getCell2("A1").setStyle(headerStyle);
worksheet.getCell2("B1").setStyle(headerStyle);
const validation = new DataValidation();
validation.type = "list";
validation.formula1 = '"Active,Inactive,Pending"';
worksheet.addDataValidation(validation, "A2:A20");
worksheet.setAutoFilter("A1:B20");
await workbook.save("managed.xlsx");
Codi obert i llicències
Aspose.Cells FOSS per TypeScript es publica sota la llicència MIT. El codi font està disponible a GitHub. L’ús comercial està permès segons els termes de la llicència MIT.