Khi sử dụng ứng dụng Google bạn có chắc mình đã sử dụng hết tính năng của nó. Với Google Apps Script, bạn có thể thêm menu, hộp thoại tùy chỉnh, viết các hàm và macro, xây dựng add-on cho Google Docs, Sheets và Slides.
Google Apps Script là gì?
Google Apps Script là một nền tảng phát triển dựa trên đám mây để tạo các ứng dụng web nhẹ, tùy chỉnh. Bạn có thể xây dựng các ứng dụng mở rộng trực tiếp bên trong trình duyệt, tích hợp dễ dàng với các sản phẩm của Google.Apps Script sử dụng ngôn ngữ JavaScript mang đến sự quen thuộc khi kết hợp phát triển web với các sản phẩm Google, khiến nó trở thành một công cụ hoàn hảo để tùy chỉnh các ứng dụng doanh nghiệp, tổ chức hoặc tự động hóa các tác vụ.
Bạn có thể tạo hai loại script với Google Apps Script:
- Standalone (Độc lập): Các script này không bị giới hạn với bất kỳ dịch vụ nào như Google Docs, Sheets hoặc Slides. Chúng có thể thực hiện các chức năng trên toàn hệ thống, giống như các macro. Tuy nhiên, chúng không thể chia sẻ với nhiều đối tượng bởi vì bạn cần sao chép và dán code để sử dụng. Ví dụ, bạn có thể tạo script tìm kiếm file trên Drive với tên cụ thể hoặc xem người có quyền chia sẻ file và thư mục trên Drive.
- Bound (Giới hạn): Script này được liên kết với các file Google Docs, Sheets, Forms hoặc Slides. Các Bound script này mở rộng chức năng của file và chỉ thực hiện các hành động trong file cụ thể đó. Ví dụ, bạn có thể tạo script thêm các menu tùy chỉnh, hộp thoại và thanh bên vào một dịch vụ hoặc script gửi email thông báo cho bạn bất cứ khi nào một ô cụ thể trong Sheet thay đổi.
Cách tạo Standalone script
Ở đây sẽ sử dụng một mẫu code từ Google làm ví dụ và sẽ giải thích các dòng code này nếu bạn không quen với Google Script hoặc JavaScript.Truy cập vào Google Apps Scripts (https://script.google.com/home). Ở góc trên cùng bên trái, click vào icon ba thanh ngang, sau đó click vào New Script.


Sau khi xóa code đã được tải trước trong file, dán dòng code sau:
//Initialize your function function createADocument() { // Create a new Google Doc named 'Hello, world!' var doc = DocumentApp.create('Hello, world!'); // Access the body of the document, then add a paragraph. doc.getBody().appendParagraph('This document was created by Google Apps Script.'); }Trước khi chạy code, bạn phải lưu script này bằng cách click vào File > Save.








// Get the URL of the document. var url = doc.getUrl(); // Get the email address of the active user - that's you. var email = Session.getActiveUser().getEmail(); // Get the name of the document to use as an email subject line. var subject = doc.getName(); // Append a new string to the "url" variable to use as an email body. var body = 'Link to your doc: ' + url; // Send yourself an email with a link to the document. GmailApp.sendEmail(email, subject, body);Nhấp vào icon hình tam giác. Vì bạn đã thêm một vài dòng bổ sung yêu cầu thêm quyền nên sẽ thực hiện các bước tương tự trên, click vào Review Permissions > Advanced, sau đó click vào Go to CreateNewDoc.
Lưu ý: Bởi vì Google cảnh báo bạn về việc khởi chạy ứng dụng không được xác minh, nên bạn sẽ nhận được một email cảnh báo bảo mật. Google thực hiện điều này trong trường hợp nghi bạn không phải là người cấp quyền cho ứng dụng không được xác minh.
Xem trước các quyền cấp cho script, sau đó click vào Allow. Khi tài liệu được tạo, bạn sẽ nhận được email cùng với link file trong Google Drive.

Cách tạo Bound script
Bây giờ chúng ta sẽ tạo một script giới hạn cho Google Sheets để phân tích trang tính hiện tại có mục trùng trong một hàng không và sau đó xóa nó.Như đã nói, Bound script hoạt động như một add-on cho một file cụ thể. Để tạo một script giới hạn, mở trang tính Google Sheets sẵn có chứa ít nhất một dữ liệu trùng lặp.


//Removes duplicate rows from the current sheet. function removeDuplicates() { //Get current active Spreadsheet var sheet = SpreadsheetApp.getActiveSheet(); //Get all values from the spreadsheet's rows var data = sheet.getDataRange().getValues(); //Create an array for non-duplicates var newData = []; //Iterate through a row's cells for (var i in data) { var row = data[i]; var duplicate = false; for (var j in newData) { if (row.join() == newData[j].join()) { duplicate = true; } } //If not a duplicate, put in newData array if (!duplicate) { newData.push(row); } } //Delete the old Sheet and insert the newData array sheet.clearContents(); sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData); }Lưu ý: Đối với script xóa dữ liệu trùng lặp, tất cả các ô trong hàng phải trùng khớp.
Lưu và đổi tên script, sau đó nhấn icon Run. Tương tự như trên, bạn phải xem trước quyền script yêu cầu và cấp quyền cho nó truy cập vào trang tính. Click vào Review Permissions. Sau đó chấp nhận thông báo và click vào Allow để cấp quyền cho script.
Sau khi chạy xong, trở lại Sheet và bạn sẽ thấy các mục trùng lặp đã biến mất.

Trên đây là hai ví dụ đơn giản về cách sử dụng Apps Script, nhưng nó còn rất nhiều tùy chọn khác phụ thuộc vào mục đích sử dụng của bạn.
Chúc các bạn thực hiện thành công!