
Phần bổ trợ tùy chỉnh là công cụ mạnh mẽ để mở rộng chức năng của Excel. Bạn có thể xây dựng các phần bổ trợ của mình để tự động hóa các tác vụ lặp đi lặp lại, tạo các hàm tùy chỉnh hoặc cung cấp cho người dùng các công cụ độc đáo. Trong bài viết này, chúng tôi sẽ xây dựng các phần bổ trợ tùy chỉnh để có chức năng nâng cao.
Hướng dẫn này sẽ hướng dẫn bạn cách xây dựng một bổ trợ Excel tùy chỉnh bằng cách sử dụng khung bổ trợ JavaScript và Office. Bằng cách sử dụng API ExchangeRates chúng tôi sẽ xây dựng một tiện ích bổ sung chuyển đổi tiền tệ.
Bước 1. Thiết lập môi trường phát triển của bạn
Cài đặt và tải xuống các điều kiện tiên quyết:
- Cài đặt Node.js :
- Tải xuống và cài đặt Node.js.
- Cài đặt mã VS :
- Tải xuống và cài đặt Visual Studio Code.
- Cài đặt CLI bổ trợ Office :
- Mở PowerShell hoặc thiết bị đầu cuối và chạy:
npm install -g yo generator-office

- Cài đặt Excel :
- Đảm bảo bạn có Excel 2016 trở lên (khuyên dùng Office 365).
- Chúng tôi đang sử dụng MS Office 365.
Bước 2:Tạo dự án bổ trợ mới
- Mở PowerShell hoặc Dấu nhắc lệnh và Chạy với tư cách quản trị viên .
- Chạy lệnh sau để tạo dự án Phần bổ trợ Office của bạn:
- Lệnh này sẽ nhắc Tiếp tục hoặc Thoát.
- Chọn Tiếp tục để tiếp tục thiết lập dự án Bổ trợ Office của bạn.
- Sử dụng các phím mũi tên để chọn Tiếp tục và nhấn Enter .
- Tiếp theo, nó sẽ đưa ra một loạt câu hỏi về loại phần bổ trợ bạn muốn tạo.
- Chọn loại dự án:
- Chọn Phần bổ trợ ngăn tác vụ (sử dụng các phím mũi tên và nhấn Enter).
- Chọn loại tập lệnh:
- Chọn JavaScript hoặc TypeScript dựa trên sở thích của bạn.
- Bạn muốn đặt tên bổ trợ của mình là gì?
- Nhập tên cho dự án của bạn (ví dụ:CustomAddin).
- Bạn muốn hỗ trợ ứng dụng khách Office nào?
- Chọn Excel .
- Chọn loại dự án:

- Chờ trình tạo hoàn tất. Trình tạo sẽ thiết lập một thư mục dự án với tất cả các tệp cần thiết. Dự án sẽ chứa các tệp sau:
- taskpane.html :Giao diện người dùng của ngăn tác vụ.
- taskpane.js :Chứa mã JavaScript cho ngăn tác vụ của bạn.
- tệp kê khai.xml :Mô tả bổ trợ của bạn cho Office.
Bước 3:Mở dự án trong Visual Studio Code
Sau khi hoàn tất thiết lập, bạn có thể mở thư mục dự án bằng cách sử dụng thiết bị đầu cuối hoặc bạn có thể mở nó trực tiếp bằng mã VS. Trong khi tạo dự án, Yeoman tạo một thư mục trong thư mục hiện tại nơi bạn chạy lệnh yo office. Thư mục sẽ có tên của dự án bổ trợ mà bạn đã chỉ định trước đó (ví dụ:CustomAddin).
Điều hướng đến Thư mục dự án trong Terminal:
- Trong PowerShell hoặc Dấu nhắc lệnh, hãy sử dụng lệnh cd (thay đổi thư mục) để di chuyển vào thư mục dự án.
- Chèn lệnh sau để di chuyển vào thư mục dự án
Mở thư mục trong Visual Studio Code:
- Sau khi vào thư mục dự án, bạn có thể mở nó trong Visual Studio Code trực tiếp từ thiết bị đầu cuối.
- Chạy lệnh sau để mở thư mục trong VS Code:

- Thao tác này sẽ mở toàn bộ dự án trong Visual Studio Code.

Bạn có thể mở thư mục Dự án trực tiếp trong Visual Studio:
- Mở Trình khám phá tệp (Windows) hoặc Finder (Mac) và điều hướng đến thư mục nơi Yeoman đã tạo dự án bổ trợ của bạn.
- Nhấp chuột phải thư mục dự án (ví dụ:CustomAddin)>> chọn Mở bằng mã nếu bạn có Mã Visual Studio đã cài đặt.
- Ngoài ra, bạn có thể mở Visual Studio Code, truy cập File tab>> chọn Mở thư mục và chọn thư mục dự án của bạn.
Bước 3. Tạo công cụ chuyển đổi tiền tệ theo thời gian thực
Sau khi mở dự án trong VS Code, bạn có thể bắt đầu chỉnh sửa và xây dựng phần bổ trợ của mình:
Phần phụ thuộc cài đặt:
Nếu bạn chưa cài đặt các phần phụ thuộc cần thiết (như Office.js), hãy mở một thiết bị đầu cuối trong VS Code và chạy lệnh sau.
Cập nhật taskpane.html và taskpane.js trong Mã VS
Giờ đây, bạn có thể chỉnh sửa các tệp HTML, JavaScript và CSS trong thư mục src/ để xác định chức năng và giao diện của phần bổ trợ.
Hãy sửa đổi taskpane.html để thiết kế giao diện người dùng của phần bổ trợ của bạn và cập nhật taskpane.js để thêm tính tương tác (ví dụ:các hàm tương tác với Excel).
Sửa đổi taskpane.html:
Mở taskpane.html và thay thế nội dung hiện có bằng nội dung sau:
<!DOCTYPE html>
<html>
<head>
<title>Currency Converter</title>
<script src="https://appsforoffice.microsoft.com/lib/1/hosted/office.js"></script>
<script src="./taskpane.js"></script>
</head>
<body>
<h2>Currency Converter</h2>
<label for="fromCurrency">From:</label>
<input id="fromCurrency" type="text" placeholder="e.g., USD" />
<br>
<label for="toCurrency">To:</label>
<input id="toCurrency" type="text" placeholder="e.g., EUR" />
<br>
<button id="convertButton">Convert</button>
<p id="status"></p>
</body>
</html> Giải thích:
- Phần:
:Đặt tiêu đề của trang là “Công cụ chuyển đổi tiền tệ”. - :
- Bao gồm office.js để tích hợp Phần bổ trợ Office.
- Liên kết taskpane.js với chức năng JavaScript tùy chỉnh.
- Phần:
- :Hiển thị tiêu đề “Chuyển đổi tiền tệ”.
và :Các trường để người dùng nhập (từCurrency và toCurrency).:Kích hoạt chuyển đổi tiền tệ.
:Hiển thị thông báo trạng thái hoặc lỗi.
Bố cục này tạo thành giao diện người dùng cho phần bổ trợ Excel của bạn.
Thêm logic trong taskpane.js:
Mở taskpane.js và thay thế nội dung hiện có bằng mã này:
Office.onReady(() => {
document.getElementById('convertButton').addEventListener('click', convertCurrency);
});
async function convertCurrency() {
const fromCurrency = document.getElementById('fromCurrency').value.toUpperCase();
const toCurrency = document.getElementById('toCurrency').value.toUpperCase();
if (!fromCurrency || !toCurrency) {
document.getElementById('status').innerText = "Please enter valid currencies.";
return;
}
try {
const apiKey = "Your_Api_Key"; // Replace with your ExchangeRates API key
const url = `https://api.exchangerate-api.com/v4/latest/${fromCurrency}`;
const response = await fetch(url);
const data = await response.json();
const rate = data.rates[toCurrency];
if (!rate) {
document.getElementById('status').innerText = `Invalid conversion rate for ${toCurrency}.`;
return;
}
await Excel.run(async (context) => {
const range = context.workbook.getSelectedRange();
range.load("values");
await context.sync();
const convertedValues = range.values.map(row =>
row.map(cell => cell * rate)
);
range.values = convertedValues;
document.getElementById('status').innerText = `Converted to ${toCurrency} successfully.`;
await context.sync();
});
} catch (error) {
console.error(error);
document.getElementById('status').innerText = "Error fetching conversion rate.";
}
}
Giải thích:
- Office.onReady: Khởi tạo phần bổ trợ khi môi trường Office sẵn sàng.
- Chức năng chuyển đổi tiền tệ:
- Đọc loại tiền đầu vào (từCurrency và toCurrency).
- Xác thực thông tin đầu vào và tìm nạp tỷ giá hối đoái qua API.
- Sử dụng Excel.run để áp dụng chuyển đổi cho các ô Excel đã chọn.
- Hiển thị thông báo thành công hoặc lỗi trong ngăn tác vụ.
- Xử lý lỗi: Phát hiện và ghi lại các lỗi thời gian chạy API hoặc Excel, cung cấp phản hồi của người dùng.
Bước 4. Kiểm tra bổ trợ của bạn
Hãy thử nghiệm bổ trợ này để xem nó hoạt động như thế nào trong Excel.
- Nếu bạn không có trong thư mục dự án, hãy điều hướng đến thư mục dự án của bạn trong terminal:
- Chạy lệnh sau trong thiết bị đầu cuối mã VS.
- Để khởi động máy chủ phát triển, hãy chạy lệnh sau.
- Nó sẽ đưa ra một câu hỏi:“? Cho phép lặp lại localhost cho Microsoft Edge WebView?”
- Loại:Có

Lệnh này sẽ khởi chạy tệp Excel.
- Excel sẽ mở và phần bổ trợ sẽ được tải tự động trong ngăn tác vụ.
- Chọn một phạm vi ô chứa các giá trị bằng loại tiền tệ.
- Chúng tôi đã chọn ô A2:A10.
- Trong Từ hộp:chèn USD và Tới hộp:chèn EUR .
- Nhấp vào Chuyển đổi .

Bước 5:Triển khai bổ trợ
Bạn có thể triển khai nó lên Office 365 hoặc chia sẻ nó để sử dụng trong tổ chức của mình. Bạn có thể thực hiện việc này bằng cách đóng gói phần bổ trợ và tải nó lên Office Store.
Sau đây là cách đóng gói phần bổ trợ:
- Trong terminal, chạy:
- Thao tác này sẽ tạo bản dựng sản phẩm của phần bổ trợ mà bạn có thể lưu trữ trên máy chủ web hoặc tải lên dịch vụ đám mây như Azure.
Các vấn đề và giải pháp thiết lập môi trường chung
- Lỗi chính sách thực thi tập lệnh (không thể tải npm.ps1)
- Giải pháp: Đặt chính sách thực thi bằng cách chạy:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
- Lệnh yo không được nhận dạng
- Giải pháp: Đảm bảo Yeoman được cài đặt chính xác bằng cách chạy:
- Để xác minh quá trình cài đặt:
- Vấn đề về quyền khi cài đặt gói
- Giải pháp: Chạy PowerShell hoặc Dấu nhắc lệnh với tư cách Quản trị viên hoặc sử dụng –force cờ trong khi cài đặt.
Kết luận
Bằng cách làm theo bước trên, bạn có thể tạo phần bổ trợ Chuyển đổi tiền tệ trong Excel. Chúng tôi đã trình bày các bước chi tiết về cách thiết lập môi trường phát triển, xây dựng phần bổ trợ và triển khai chức năng bằng JavaScript. Bạn có thể mở rộng thêm chức năng của phần bổ trợ này bằng cách thêm các tính năng nâng cao hơn.
Nhận MIỄN PHÍ Bài tập Excel nâng cao có Giải pháp!