Giới thiệu

Aspose.Cells FOSS for TypeScript cung cấp một bộ tính năng quản lý bảng tính toàn diện vượt ra ngoài việc đọc/ghi ô cơ bản. Các nhà phát triển có thể áp dụng kiểu dáng chi tiết, thiết lập các quy tắc xác thực dữ liệu, cấu hình bộ lọc tự động, thêm định dạng có điều kiện, xây dựng biểu đồ, chèn hình dạng và bảo vệ sổ làm việc – tất cả đều từ mã TypeScript mà không cần phụ thuộc vào Microsoft Office.

Bài viết này hướng dẫn các khả năng quản lý bảng tính chính có sẵn trong thư viện, kèm theo các ví dụ mã hoạt động cho mỗi lĩnh vực tính năng.


Tính năng chính

Xác thực dữ liệu

Thêm các quy tắc xác thực vào các phạm vi ô bằng cách sử dụng lớp DataValidation. Các loại xác thực được hỗ trợ bao gồm danh sách, phạm vi số và công thức tùy chỉnh. Áp dụng xác thực cho bất kỳ phạm vi nào bằng 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");

Bộ lọc tự động

Bật tiêu đề bộ lọc tự động trên một phạm vi dữ liệu bằng worksheet.setAutoFilter(). Điều này sẽ thêm các điều khiển bộ lọc dạng thả xuống vào tiêu đề cột trong tệp XLSX đầu ra. Xóa bộ lọc bằng 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");

Định dạng có điều kiện

Áp dụng các quy tắc trực quan cho các phạm vi ô bằng cách sử dụng ConditionalFormatCollection. Thư viện hỗ trợ ColorScaleRule, DataBarRuleIconSetRule để làm nổi bật các ô dựa trên giá trị của chúng.

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");

Liên kết siêu văn bản và Bình luận

Gắn siêu liên kết vào các ô với cell.setHyperlink() hỗ trợ URL, địa chỉ email và tham chiếu trang tính nội bộ. Thêm nhận xét với worksheet.addComment() bằng cách sử dụng các đối tượng 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");

Bảo vệ Sổ làm việc và Ô

Bảo vệ toàn bộ sổ làm việc bằng mật khẩu sử dụng workbook.protect(). Khóa các ô riêng lẻ bằng style.setLocked(true) và kiểm soát việc hiển thị công thức bằng 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");

Kích thước Cột và Hàng

Đặt độ rộng cột bằng worksheet.setColumnWidth() và độ cao hàng bằng worksheet.setRowHeight(). Ẩn các hàng bằng worksheet.setRowHidden(). Các cài đặt này được lưu lại trong tệp XLSX đã lưu.

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");

Bắt đầu nhanh

Cài đặt bằng npm:

npm install @aspose/cells@1.0.0

Xây dựng một workbook có kiểu dáng với xác thực và bộ lọc tự động:

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");

Mã nguồn mở & Cấp phép

Aspose.Cells FOSS cho TypeScript được phát hành dưới giấy phép MIT. Mã nguồn có sẵn trên GitHub. Việc sử dụng thương mại được phép theo các điều khoản của giấy phép MIT.


Bắt đầu

Tài nguyên liên quan