Chạy Office Scripts bằng Power Automate
Nguồn: https://learn.microsoft.com/en-us/office/dev/scripts/develop/power-automate-integration Tiêu đề gốc: Run Office Scripts with Power Automate - Office Scripts | Microsoft Learn Ngôn ngữ gốc: tiếng Anh · Ngày tải: 2026-09-05 Phạm vi dịch: toàn văn bài viết kèm 3 hình của bản gốc; bỏ thanh điều hướng, khối "Collaborate with us on GitHub", khối góp ý và mục "Additional resources" Link sau chuyển hướng khi tải: https://learn.microsoft.com/en-us/office/dev/scripts/develop/power-automate-integration?tabs=run-script
Tóm tắt 30 giây
- Nhờ Power Automate, bạn đặt được một Office Script vào giữa một luồng công việc tự động lớn hơn.
- Muốn dùng Office Scripts trong Power Automate, bạn phải có license bản business của Microsoft 365.
- Connector Excel Online (Business) có hai action gọi script. Run script chạy script nằm ở OneDrive. Run script from SharePoint library chạy script nằm ở site SharePoint của nhóm.
- Dữ liệu truyền vào và trả về giữa flow và script qua tham số của hàm
main. Tham số có thể là giá trị tĩnh, biểu thức hoặc nội dung động. - Action "Run script" cho người dùng connector quyền truy cập lớn vào workbook, nên quản trị viên cần cân nhắc chính sách bảo mật.
Ghi chú người dịch: đầu bản lưu có dòng của Microsoft Learn: "Access to this page requires authorization. You can try signing in or changing directories." (Xem trang này cần có quyền. Bạn có thể thử đăng nhập hoặc đổi thư mục tổ chức.) Đây là thông báo của hệ thống Learn, không phải nội dung bài viết.
Nhờ Power Automate, bạn đặt được Office Scripts vào một luồng công việc tự động lớn hơn. Bạn dùng Power Automate cho những việc như thêm nội dung một email vào table (bảng) trong worksheet (trang tính). Hoặc tạo việc cần làm trong công cụ quản lý dự án, dựa trên comment (bình luận) trong workbook (file bảng tính).
Quan trọng: để dùng Office Scripts trong Power Automate, bạn phải có license (giấy phép sử dụng) bản business của Microsoft 365. Hai license Office 365 Enterprise E1 và Office 365 F3 dùng được Scripts với Power Automate, nhưng không có phần tích hợp Power Automate ngay trong Excel.
Mẹo: bạn muốn chạy script tự động mà không cần nối với app khác? Hãy dùng tính năng đặt lịch chạy script (Script scheduling).
Bắt đầu
Nếu bạn mới dùng Power Automate, chúng tôi khuyên bạn đọc Get started with Power Automate trước. Tài liệu đó giới thiệu toàn bộ khả năng tự động hóa mà công cụ này mở ra.
Tài liệu này tập trung vào cách Office Scripts phối hợp với Power Automate, giúp bạn dùng Excel tốt hơn.
Các bài hướng dẫn từng bước
Có ba bài hướng dẫn từng bước về Power Automate và Office Scripts. Chúng cho thấy cách ghép hai dịch vụ tự động hóa lại với nhau và cách truyền dữ liệu giữa workbook và flow (luồng).
- Tutorial: Update a spreadsheet from a Power Automate flow
- Tutorial: Automatically save content from emails in a workbook
- Tutorial: Send weekly email reminders based on spreadsheet data
Tạo một flow ngay từ Excel
Bạn bắt đầu với Power Automate ngay trong Excel bằng nhiều mẫu flow có sẵn. Ở tab Automate, chọn Automate a Task.
Thao tác này mở khung tác vụ với nhiều lựa chọn kết nối Office Scripts vào các giải pháp tự động lớn hơn. Chọn một lựa chọn bất kỳ để bắt đầu. Flow được tạo ra sẽ gắn sẵn với workbook hiện tại.

Hình: khung Automate a Task trong Excel, liệt kê sẵn các mẫu flow để bạn chọn một mẫu và bắt đầu.
Mẹo: bạn cũng bắt đầu tạo flow được từ menu More options (…) của từng script.
Connector Excel
Connector Excel Online (Business) cho flow của bạn quyền truy cập vào các workbook Excel. Có hai action gọi được Office Scripts.
- Run script. Đây là action dùng cho script lưu ở vị trí mặc định trong OneDrive của bạn.
- Run script from SharePoint library. Đây là action dùng khi script lưu ở site SharePoint của nhóm bạn.
Với action Run script, vị trí script luôn nằm trong OneDrive của bạn.

Hình: các ô cần điền của action Run script — chọn vị trí, thư viện tài liệu, file workbook rồi tới script muốn chạy.
Ghi chú người dịch: trang gốc trình bày hai action này thành hai tab. Bản lưu ngày tải chỉ giữ được nội dung và ảnh của tab Run script. Ảnh của tab Run script from SharePoint library không tải về được, và bản lưu cũng không có phần chữ mô tả riêng cho tab đó.
Bảo mật dữ liệu khi dùng Office Scripts với Power Automate
Action "Run script" cho người dùng connector Excel quyền truy cập đáng kể vào workbook và dữ liệu trong đó. Ngoài ra còn có rủi ro bảo mật ở những script gọi API bên ngoài, như phần External calls from Power Automate giải thích. Quản trị viên của bạn lo dữ liệu rất nhạy cảm bị lộ? Họ có thể tắt hẳn connector Excel Online, hoặc siết quyền dùng Office Scripts qua phần điều khiển dành cho quản trị viên Office Scripts.
Có quản trị viên bật chính sách Conditional Access cho thiết bị không do tổ chức quản lý trong tenant của mình. Với họ, một biện pháp được khuyến nghị là tắt Power Automate trên những thiết bị đó. Bài blog Control Access to Power Apps and Power Automate with Azure AD Conditional Access Policies mô tả chi tiết quy trình này.
Truyền dữ liệu trong flow cho script
Power Automate truyền được từng mẩu dữ liệu giữa các action trong flow. Bạn cấu hình được script để nó nhận đúng thông tin cần và trả về đúng thứ bạn muốn lấy từ workbook ra flow. Dữ liệu truyền vào script dưới dạng giá trị tĩnh, biểu thức hoặc nội dung động. Chi tiết connector của từng dịch vụ nằm trong tài liệu connector của Power Automate.
Muốn nắm chi tiết cách truyền dữ liệu vào và ra khỏi script, hãy đọc các tài liệu sau.
- Học bằng cách làm với Tutorial: Automatically save content from emails in a workbook và Tutorial: Send weekly email reminders based on spreadsheet data.
- Thử kịch bản mẫu Automated task reminders để thấy mọi thứ chạy thật.
- Đọc Pass data to and from scripts in Power Automate để có thêm tình huống sử dụng và chi tiết kỹ thuật phía TypeScript.
Ví dụ
Ảnh chụp màn hình dưới đây cho thấy một flow Power Automate chạy mỗi khi có người gửi phản hồi mới cho một Form. Flow chạy một script; script này thêm giá trị mức hài lòng lấy từ Form vào một table. Script trả về mức hài lòng trung bình hiện tại, rồi flow gửi con số đó qua email.

Hình: flow ví dụ trong trình soạn của Power Automate — trigger từ Forms, chạy script Excel, rồi gửi email.
Hàm main của script khai báo giá trị mức hài lòng mới thành tham số đầu vào (newData). Script trả về mức hài lòng trung bình của table.
function main(workbook: ExcelScript.Workbook, newData: string): number {
// Thêm dữ liệu mới vào table.
const table = workbook.getTable("SurveyTable");
table.addRow(-1, [newData]);
// Lấy tổng mức hài lòng hiện tại.
const satisfactionColumn = table.getColumnByName("Current Satisfaction");
const values = satisfactionColumn.getRangeBetweenHeaderAndTotal().getValues();
let total = 0.0;
values.forEach((value) => {
total += value[0] as number;
});
// Trả về mức hài lòng trung bình.
return total / values.length;
}Lưu ý: tham số của script có kiểu
string, vì đó là kiểu mà action Forms trả về cho mọi giá trị.
Bạn tìm được ví dụ đầy đủ kèm hướng dẫn từng bước trong Office Scripts samples and scenarios. Nhiều ví dụ trong đó đặt Office Scripts vào giữa các flow Power Automate.
Xem thêm
- Tutorial: Update a spreadsheet from a Power Automate flow
- Pass data to and from scripts in Power Automate
- Troubleshooting information for Power Automate with Office Scripts
- Get started with Power Automate
- Excel Online (Business) connector reference documentation
Cập nhật lần cuối: 02/08/2024 (bản gốc ghi theo lối tháng/ngày/năm, tức ngày 8 tháng 2 năm 2024).