Uvod
Aspose.Cells FOSS za TypeScript pruža sveobuhvatan skup funkcija za upravljanje proračunskim tabelama, koji prevazilazi osnovno čitanje/pisanje ćelija. Programeri mogu primeniti detaljno stilizovanje, postaviti pravila za validaciju podataka, konfigurisati automatske filtere, dodati uslovno formatiranje, kreirati grafikone, umetati oblike i zaštititi radne sveske – sve iz TypeScript koda bez zavisnosti od Microsoft Office-a.
Ovaj post prikazuje ključne mogućnosti upravljanja proračunskim tabelama dostupne u biblioteci, uz radne primere koda za svako područje funkcionalnosti.
Ključne karakteristike
Валидација података
Dodajte pravila validacije za opsege ćelija koristeći klasu DataValidation. Podržani tipovi validacije uključuju listu, opseg brojeva i prilagođene formule. Primeni validaciju na bilo koji opseg pomoću 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-filter
Omogućite auto‑filter zaglavlja na opsegu podataka pomoću worksheet.setAutoFilter(). Ovo dodaje kontrole padajućeg filtera na zaglavlja kolona u izlaznom XLSX fajlu. Uklonite filtere pomoću 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");
Uslovno formatiranje
Primeni vizuelna pravila na opsege ćelija koristeći ConditionalFormatCollection. Biblioteka podržava ColorScaleRule, DataBarRule i IconSetRule za isticanje ćelija na osnovu njihovih vrednosti.
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");
Хипервезе и коментари
Priložite hiperveze na ćelije sa cell.setHyperlink() podržanim URL‑ovima, adresama e‑pošte i internim referencama na listu. Dodajte komentare sa worksheet.addComment() koristeći Comment objekte.
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");
Заштита радне свеске и ћелија
Zaštitite čitave radne sveske lozinkom koristeći workbook.protect(). Zaključajte pojedinačne ćelije pomoću style.setLocked(true) i kontrolišite vidljivost formula pomoću 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");
Veličina kolona i redova
Postavite širine kolona pomoću worksheet.setColumnWidth() i visine redova pomoću worksheet.setRowHeight(). Sakrijte redove pomoću worksheet.setRowHidden(). Ova podešavanja ostaju sačuvana u XLSX fajlu.
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");
Brzi početak
Instalirajte pomoću npm:
npm install @aspose/cells@1.0.0
Izgradite stilizovan radni list sa validacijom i automatskim filterom:
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");
Отворени извор и лиценцирање
Aspose.Cells FOSS za TypeScript je objavljen pod MIT licencom. Izvorni kod je dostupan na GitHub. Komercijalna upotreba je dozvoljena prema uslovima MIT licence.