Maika8008
Thành viên gạo cội




Giả sử rằng bạn muốn mời các thành viên tham dự buổi họp Hội đồng hương. Bạn dự định gửi email đến họ và yêu cầu đăng ký và xác nhận có mặt. Bạn muốn họ yên tâm là ban tổ chức đã nhận được thông tin đăng ký của họ bằng cách gửi email ngay khi nhận được đăng ký. Đây chính là lúc bạn cần đến bộ 3 spreadsheet, form và mail của Google hợp tác thông qua Google Apps Script.
Cách thức tuần tự như sau:
1. Tạo file trang tính mới có tên là Data, không chứa gì cả.
2. Mở Google Form (biểu mẫu)
2.1. Bấm vào Biểu mẫu trống -> Tạo biểu mẫu như sau:

Tạo xong bấm Xuất bản góc trên bên phải -> ấn Xuất bản
Bấm biểu tượng Sao chép liên kết của người trả lời góc trên bên phải -> ấn Sao chép
Bạn sẽ có link như sau (link thật mà tôi đã làm cho bài viết này):
2.2. Tại tab Câu trả lời -> bấm Liên kết với trang tính -> bấm option Chọn bảng tính hiện có -> ấn Chọn -> chọn trang tính Data vừa tạo ở bước 1 -> ấn Chèn
File Data sẽ mở ra có sẵn 1 table mới có 4 cột: Dấu thời gian,Họ tên, Địa chỉ email, Nội dung xác nhận.
3. Vào menu Tiện ích -> Apps Script dán hàm này vào:
4. Thiết lập Trình kích hoạt (Trigger)
Để mã tự chạy mỗi khi có người gửi Form, bạn cần cài đặt trigger:
-> Tại giao diện Script Editor, nhấp vào biểu tượng Trình kích hoạt (hình đồng hồ
) ở thanh bên trái.
-> Nhấp vào nút + Thêm trình kích hoạt (+ Add Trigger) ở góc dưới bên phải.
-> Thiết lập các thông số như sau:
Chọn hàm để chạy: OnFormSubmit
Chọn nguồn sự kiện: Từ bảng tính
Chọn loại sự kiện: Khi/Đang gửi biểu mẫu (On form submit)
Nhấn Lưu và cấp quyền truy cập Gmail khi được yêu cầu
5. Gửi link form đã có ở bước 2.1 cho các thành viên để họ đăng ký tham dự sự kiện. Kể từ đây khi thành viên gửi form đi thì thông tin được ghi lại ở trang tính Data và hệ thống sẽ tự động gửi mail (nếu email hợp lệ) xác nhận đã nhận được đăng ký.
Bạn có thể triển khai giải pháp này cho nhiều hoạt động có độ phức tạp khác nhau nhưng chung quy thì quy trình cơ bản vẫn như vậy
Cách thức tuần tự như sau:
1. Tạo file trang tính mới có tên là Data, không chứa gì cả.
2. Mở Google Form (biểu mẫu)
2.1. Bấm vào Biểu mẫu trống -> Tạo biểu mẫu như sau:

Tạo xong bấm Xuất bản góc trên bên phải -> ấn Xuất bản
Bấm biểu tượng Sao chép liên kết của người trả lời góc trên bên phải -> ấn Sao chép
Bạn sẽ có link như sau (link thật mà tôi đã làm cho bài viết này):
2.2. Tại tab Câu trả lời -> bấm Liên kết với trang tính -> bấm option Chọn bảng tính hiện có -> ấn Chọn -> chọn trang tính Data vừa tạo ở bước 1 -> ấn Chèn
File Data sẽ mở ra có sẵn 1 table mới có 4 cột: Dấu thời gian,Họ tên, Địa chỉ email, Nội dung xác nhận.
3. Vào menu Tiện ích -> Apps Script dán hàm này vào:
JavaScript:
function onFormSubmit(e) {
// Lấy dữ liệu từ form
var timestamp = e.values[0]; // Cột A
var name = e.values[1]; // Cột B
var email = e.values[2]; // Cột C
var content = e.values[3]; // Cột D
// Soạn email xác nhận
var subject = "Xác nhận đăng ký từ Google Form";
var body = "Xin chào " + name + ",\n\n"
+ "Chúng tôi đã nhận được thông tin của bạn:\n"
+ "- Thời gian gửi: " + timestamp + "\n"
+ "- Nội dung: " + content + "\n\n"
+ "Cảm ơn bạn đã đăng ký!";
// Gửi email xác nhận
MailApp.sendEmail(email, subject, body);
}
4. Thiết lập Trình kích hoạt (Trigger)
Để mã tự chạy mỗi khi có người gửi Form, bạn cần cài đặt trigger:
-> Tại giao diện Script Editor, nhấp vào biểu tượng Trình kích hoạt (hình đồng hồ
-> Nhấp vào nút + Thêm trình kích hoạt (+ Add Trigger) ở góc dưới bên phải.
-> Thiết lập các thông số như sau:
Chọn hàm để chạy: OnFormSubmit
Chọn nguồn sự kiện: Từ bảng tính
Chọn loại sự kiện: Khi/Đang gửi biểu mẫu (On form submit)
Nhấn Lưu và cấp quyền truy cập Gmail khi được yêu cầu
5. Gửi link form đã có ở bước 2.1 cho các thành viên để họ đăng ký tham dự sự kiện. Kể từ đây khi thành viên gửi form đi thì thông tin được ghi lại ở trang tính Data và hệ thống sẽ tự động gửi mail (nếu email hợp lệ) xác nhận đã nhận được đăng ký.
Bạn có thể triển khai giải pháp này cho nhiều hoạt động có độ phức tạp khác nhau nhưng chung quy thì quy trình cơ bản vẫn như vậy

