Úvod
Aspose.Cells FOSS for TypeScript poskytuje komplexní sadu funkcí pro správu tabulek nad rámec základního čtení/zápisu buněk. Vývojáři mohou aplikovat podrobné stylování, nastavit pravidla pro ověřování dat, konfigurovat automatické filtry, přidávat podmíněné formátování, vytvářet grafy, vkládat tvary a chránit sešity – vše z TypeScript kódu bez závislosti na Microsoft Office.
Tento příspěvek představuje klíčové schopnosti správy tabulek dostupné v knihovně, včetně funkčních ukázek kódu pro každou oblast funkcí.
Klíčové vlastnosti
Validace dat
Přidejte validační pravidla k rozsahům buněk pomocí třídy DataValidation. Podporované typy validace zahrnují seznam, číselný rozsah a vlastní vzorce. Použijte validaci na libovolný rozsah pomocí 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");
Automatický filtr
Povolit automatické filtry v hlavičkách datového rozsahu pomocí worksheet.setAutoFilter(). Tím se přidají rozbalovací ovládací prvky filtru do hlaviček sloupců ve výstupním souboru XLSX. Filtry odeberete pomocí 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");
Podmíněné formátování
Použijte vizuální pravidla na rozsahy buněk pomocí ConditionalFormatCollection. Knihovna podporuje ColorScaleRule, DataBarRule a IconSetRule pro zvýraznění buněk na základě jejich hodnot.
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");
Hyperlinky a komentáře
Připojte hypertextové odkazy k buňkám s cell.setHyperlink() podporujícími URL, e‑mailové adresy a interní odkazy na listy. Přidejte komentáře s worksheet.addComment() pomocí objektů 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");
Ochrana sešitu a buňky
Chraňte celé sešity heslem pomocí workbook.protect(). Uzamkněte jednotlivé buňky pomocí style.setLocked(true) a kontrolujte viditelnost vzorců pomocí 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");
Velikost sloupce a řádku
Nastavte šířky sloupců pomocí worksheet.setColumnWidth() a výšky řádků pomocí worksheet.setRowHeight(). Skryjte řádky pomocí worksheet.setRowHidden(). Tato nastavení zůstávají v uloženém souboru XLSX.
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");
Rychlý start
Instalovat pomocí npm:
npm install @aspose/cells@1.0.0
Vytvořte stylovaný sešit s validací a automatickým filtrem:
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 a licencování
Aspose.Cells FOSS pro TypeScript je vydán pod licencí MIT. Zdrojový kód je k dispozici na GitHub. Komerční použití je povoleno podle podmínek licence MIT.