Introduzione
Aspose.Cells FOSS per TypeScript offre un set completo di funzionalità di gestione dei fogli di calcolo oltre alla lettura/scrittura di base delle celle. Gli sviluppatori possono applicare stili dettagliati, impostare regole di convalida dei dati, configurare filtri automatici, aggiungere formattazione condizionale, creare grafici, inserire forme e proteggere le cartelle di lavoro – tutto dal codice TypeScript senza dipendenza da Microsoft Office.
Questo post illustra le principali funzionalità di gestione dei fogli di calcolo disponibili nella libreria, con esempi di codice funzionanti per ogni area funzionale.
Caratteristiche principali
Validazione dei dati
Aggiungi regole di convalida alle aree di celle utilizzando la classe DataValidation. I tipi di convalida supportati includono elenco, intervallo numerico e formule personalizzate. Applica la convalida a qualsiasi intervallo con 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");
Auto-Filtro
Abilita le intestazioni di filtro automatico su un intervallo di dati con worksheet.setAutoFilter(). Questo aggiunge controlli di filtro a discesa alle intestazioni di colonna nel file XLSX di output. Rimuovi i filtri con 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");
Formattazione condizionale
Applica regole visive alle aree di celle usando ConditionalFormatCollection. La libreria supporta ColorScaleRule, DataBarRule e IconSetRule per evidenziare le celle in base ai loro valori.
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");
Collegamenti ipertestuali e commenti
Allega collegamenti ipertestuali alle celle con cell.setHyperlink() che supportano URL, indirizzi email e riferimenti interni al foglio. Aggiungi commenti con worksheet.addComment() usando oggetti 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");
Protezione della cartella di lavoro e della cella
Proteggi interi cartelle di lavoro con una password usando workbook.protect(). Blocca celle individuali con style.setLocked(true) e controlla la visibilità delle formule con 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");
Dimensionamento di colonne e righe
Imposta la larghezza delle colonne con worksheet.setColumnWidth() e l’altezza delle righe con worksheet.setRowHeight(). Nascondi le righe con worksheet.setRowHidden(). Queste impostazioni persistono nel file XLSX salvato.
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");
Avvio rapido
Installa con npm:
npm install @aspose/cells@1.0.0
Crea una cartella di lavoro con stile, con convalida e filtro automatico:
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");
Open Source e Licenze
Aspose.Cells FOSS per TypeScript è rilasciato sotto licenza MIT. Il codice sorgente è disponibile su GitHub. L’uso commerciale è consentito ai sensi dei termini della licenza MIT.