Bỏ qua nội dung chính
Trình duyệt này không còn được hỗ trợ.
Nâng cấp lên Microsoft Edge để tận dụng các tính năng mới nhất, cập nhật bảo mật và hỗ trợ kỹ thuật.
Mô hình đối tượng JavaScript Excel trong các tiện ích bổ sung văn phòng
- Bài báo
- 03/22/2022
- 4 phút để đọc
Trong bài viết này
Bài viết này mô tả cách sử dụng API JavaScript Excel để xây dựng các tiện ích bổ sung cho Excel 2016 trở lên. Nó giới thiệu các khái niệm cốt lõi là cơ bản để sử dụng API và cung cấp hướng dẫn để thực hiện các tác vụ cụ thể như đọc hoặc ghi vào một phạm vi lớn, cập nhật tất cả các ô trong phạm vi và hơn thế nữa.
API Office.js cho Excel
Một bổ trợ Excel tương tác với các đối tượng trong Excel bằng cách sử dụng API JavaScript Office, bao gồm hai mô hình đối tượng JavaScript:
Excel JavaScript API: Được giới thiệu với Office 2016, API JavaScript Excel cung cấp các đối tượng được gõ mạnh mà bạn có thể sử dụng để truy cập bảng tính, phạm vi, bảng, biểu đồ, v.v.: Introduced with Office 2016, the Excel JavaScript API provides strongly-typed objects that you can use to access worksheets, ranges, tables, charts, and more.
API thông thường: Được giới thiệu với Office 2013, API phổ biến có thể được sử dụng để truy cập các tính năng như UI, hộp thoại và cài đặt máy khách phổ biến trên nhiều loại ứng dụng Office.: Introduced with Office 2013, the Common API can be used to access features such as UI, dialogs, and client settings that are common across multiple types of Office applications.
Mặc dù bạn có thể sẽ sử dụng API JavaScript Excel để phát triển phần lớn chức năng trong các tiện ích bổ sung nhắm mục tiêu Excel 2016 trở lên, bạn cũng sẽ sử dụng các đối tượng trong API chung. Ví dụ:
- Bối cảnh: Đối tượng Context biểu thị môi trường thời gian chạy của bổ trợ và cung cấp quyền truy cập vào các đối tượng chính của API. Nó bao gồm các chi tiết cấu hình sổ làm việc như contentLanguage và officeTheme và cũng cung cấp thông tin về môi trường thời gian chạy của bổ trợ như host và platform. Ngoài ra, nó cung cấp phương thức requirements.isSetSupported() mà bạn có thể sử dụng để kiểm tra xem tập hợp yêu cầu được chỉ định có được hỗ trợ bởi ứng dụng Excel trong đó phần bổ trợ đang chạy hay không.
- Tài liệu: Đối tượng Document cung cấp phương thức await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); }); 0 mà bạn có thể sử dụng để tải xuống tệp Excel nơi phần bổ trợ đang chạy.
Hình ảnh sau đây minh họa khi bạn có thể sử dụng API JavaScript Excel hoặc API thông thường.
Mô hình đối tượng dành riêng cho Excel
Để hiểu API Excel, bạn phải hiểu làm thế nào các thành phần của sổ làm việc có liên quan đến nhau.
- Một sổ làm việc chứa một hoặc nhiều bảng tính.Workbook contains one or more Worksheets.
- Một bảng tính chứa các bộ sưu tập của các đối tượng dữ liệu có trong trang riêng lẻ và cho phép truy cập vào các ô thông qua các đối tượng phạm vi.Worksheet contains collections of those data objects that are present in the individual sheet, and gives access to cells through Range objects.
- Một phạm vi đại diện cho một nhóm các tế bào tiếp giáp.Range represents a group of contiguous cells.
- Phạm vi được sử dụng để tạo và đặt bảng, biểu đồ, hình dạng và trực quan hóa dữ liệu hoặc đối tượng tổ chức khác. are used to create and place Tables, Charts, Shapes, and other data visualization or organization objects.
- Sổ làm việc chứa bộ sưu tập của một số đối tượng dữ liệu (như bảng) cho toàn bộ sổ làm việc. contain collections of some of those data objects (such as Tables) for the entire Workbook.
Ghi chú
API JavaScript Excel không có đối tượng hoặc lớp "ô". Thay vào đó, API JavaScript Excel xác định tất cả các ô Excel là đối tượng await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); }); 1. Một ô riêng lẻ trong UI Excel chuyển thành đối tượng await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); }); 1 với một ô trong API JavaScript Excel. Một đối tượng await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); }); 1 cũng có thể chứa nhiều ô liền kề. Xem công việc với các ô bằng API JavaScript Excel để tìm hiểu thêm.
Các dãy
Một phạm vi là một nhóm các tế bào tiếp giáp trong sổ làm việc. Các tiện ích bổ sung thường sử dụng ký hiệu kiểu A1 (ví dụ: B3 cho một ô đơn trong cột B và hàng 3 hoặc C2: F4 cho các ô từ các cột C đến F và các hàng 2 đến 4) để xác định phạm vi.B3 for the single cell in column B and row 3 or C2:F4 for the cells from columns C through F and rows 2 through 4) to define ranges.
Phạm vi có ba thuộc tính lõi: await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); }); 4, await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); }); 5 và await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); }); 6. Các thuộc tính này nhận hoặc đặt các giá trị tế bào, công thức được đánh giá và định dạng trực quan của các ô.
Mẫu phạm vi
Mẫu sau đây cho thấy cách tạo hồ sơ bán hàng. Hàm này sử dụng các đối tượng await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); }); 1 để đặt các giá trị, công thức và định dạng.
await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); // Create the headers and format them to stand out. let headers = [ ["Product", "Quantity", "Unit Price", "Totals"] ]; let headerRange = sheet.getRange("B2:E2"); headerRange.values = headers; headerRange.format.fill.color = "#4472C4"; headerRange.format.font.color = "white"; // Create the product data rows. let productData = [ ["Almonds", 6, 7.5], ["Coffee", 20, 34.5], ["Chocolate", 10, 9.56], ]; let dataRange = sheet.getRange("B3:D5"); dataRange.values = productData; // Create the formulas to total the amounts sold. let totalFormulas = [ ["=C3 * D3"], ["=C4 * D4"], ["=C5 * D5"], ["=SUM(E3:E5)"] ]; let totalRange = sheet.getRange("E3:E6"); totalRange.formulas = totalFormulas; totalRange.format.font.bold = true; // Display the totals as US dollar amounts. totalRange.numberFormat = [["$0.00"]]; await context.sync(); });Mẫu này tạo ra dữ liệu sau trong bảng tính hiện tại.
Để biết thêm thông tin, hãy xem Set và nhận các giá trị, văn bản hoặc công thức phạm vi bằng API Excel JavaScript.
Biểu đồ, bảng và các đối tượng dữ liệu khác
API JavaScript Excel có thể tạo và thao tác các cấu trúc dữ liệu và trực quan hóa trong Excel. Các bảng và biểu đồ là hai trong số các đối tượng được sử dụng phổ biến hơn, nhưng API hỗ trợ pivottables, hình dạng, hình ảnh, v.v.
Tạo một bảng
Tạo bảng bằng cách sử dụng phạm vi chứa đầy dữ liệu. Định dạng và điều khiển bảng (như bộ lọc) được tự động áp dụng cho phạm vi.
Mẫu sau đây tạo ra một bảng bằng cách sử dụng các phạm vi từ mẫu trước.
await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); sheet.tables.add("B2:E5", true); await context.sync(); });Sử dụng mã mẫu này trên bảng tính với dữ liệu trước đó tạo ra bảng sau.
Để biết thêm thông tin, hãy xem công việc với các bảng bằng API JavaScript Excel.
Tạo một biểu đồ
Tạo biểu đồ để trực quan hóa dữ liệu trong một phạm vi. Các API hỗ trợ hàng chục giống biểu đồ, mỗi loại có thể được tùy chỉnh cho phù hợp với nhu cầu của bạn.
Mẫu sau đây tạo ra một biểu đồ cột đơn giản cho ba mục và đặt nó 100 pixel dưới đỉnh bảng tính.
await Excel.run(async (context) => { let sheet = context.workbook.worksheets.getActiveWorksheet(); let chart = sheet.charts.add(Excel.ChartType.columnStacked, sheet.getRange("B3:C5")); chart.top = 100; await context.sync(); });Chạy mẫu này trên bảng tính với bảng trước đó tạo ra biểu đồ sau.
Để biết thêm thông tin, hãy xem công việc với biểu đồ bằng API JavaScript Excel.
Xem thêm
- Xây dựng bổ trợ Excel đầu tiên của bạn
- Các mẫu mã bổ trợ Excel
- Tối ưu hóa hiệu suất API của Excel JavaScript
- Tham chiếu API JavaScript Excel
Nhận xét
Gửi và xem phản hồi cho