Bekerja dengan Manajemen Spreadsheet
Mengelola Lembar Kerja
Kelas WorksheetCollection menyediakan metode untuk mengelola lembar kerja dalam buku kerja. Tambahkan lembar kerja baru dengan addWorksheet(), hapus dengan removeWorksheet(), dan urutkan kembali dengan moveWorksheet().
import { Workbook } from "excel-cells";
const workbook = new Workbook();
const sheets = workbook.worksheets;
const sheet2 = sheets.addWorksheet("Sales");
const sheet3 = sheets.addWorksheet("Summary");
sheet2.putValue("A1", "Sales Data");
sheet3.putValue("A1", "Summary Report");
await workbook.save("multi-sheet.xlsx");Nilai Sel dan Rumus
Tuliskan integer, desimal, dan string dengan worksheet.putValue(). Akses sel dengan referensi menggunakan getCell2() atau dengan indeks baris/kolom menggunakan getCell(). Atur rumus dengan cell.setFormula().
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", 42);
worksheet.putValue("A2", 3.14159);
worksheet.putValue("A3", "Hello World");
const cellA4 = worksheet.getCell2("A4");
cellA4.setFormula("=SUM(A1:A2)");
await workbook.save("values.xlsx");Pengaturan Font dan Isi
Terapkan pengaturan font menggunakan kelas Style. Atur nama font, ukuran, tebal, miring, dan warna. Terapkan gaya ke sel individu dengan cell.setStyle().
import { Workbook, Style } from "excel-cells";
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
const style = new Style();
style.setFontName("Arial");
style.setFontSize(14);
style.setBold(true);
style.setItalic(true);
style.setFontColor("FF0000");
const cell = worksheet.getCell2("A1");
cell.putValue("Styled Text");
cell.setStyle(style);
await workbook.save("styled.xlsx");Validasi Data
Tambahkan aturan validasi ke rentang sel menggunakan DataValidation. Tentukan jenis validasi (daftar, rentang angka, atau kustom) dan terapkan dengan worksheet.addDataValidation().
import { Workbook, DataValidation } from "excel-cells";
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");Filter Otomatis
Aktifkan header kolom yang dapat difilter dengan worksheet.setAutoFilter(). Hapus filter dengan 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.setAutoFilter("A1:C4");
await workbook.save("filtered.xlsx");Hyperlinks
Lampirkan hyperlink ke sel dengan cell.setHyperlink(). Mendukung URL, alamat email, dan referensi lembar internal.
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");Proteksi Buku Kerja
Lindungi buku kerja dengan kata sandi menggunakan workbook.protect(). Kunci sel individual dengan style.setLocked(true).
import { Workbook, Style } from "excel-cells";
const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Protected Cell");
const style = new Style();
style.setLocked(true);
worksheet.getCell2("A1").setStyle(style);
workbook.protect(true, "password");
await workbook.save("protected.xlsx");Pengaturan Ukuran Kolom dan Baris
Atur lebar kolom dan tinggi baris untuk mengontrol dimensi sel dalam file XLSX output.
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");