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 chức năng 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:
Nếu không biết nhiều về JavaScript hoặc có thể bạn chưa bao giờ nghe về nó trước đây cũng đừng quá lo lắng vì sử dụng Apps Script rất dễ dàng, nó cung cấp nhiều tài liệu và ví dụ để bạn có thể tự kiểm tra. Dưới đây là một số ví dụ để bạn hiểu về cách làm việc của chúng.
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.
Một dự án không có tiêu đề mới mở ra với một hàm trống bên trong, nhưng vì ở đây sử dụng mẫu code từ Google nên bạn có thể xóa tất cả văn bản trong file.
Lưu ý: Bạn cần đăng nhập vào tài khoản Google để script này hoạt động.
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.
Đổi tên dự án, sau đó nhấn vào OK.
Để chạy code, click vào icon phát ở trên thanh công cụ.
Bạn sẽ phải cấp quyền cho script để truy cập vào tài khoản Google thông qua cửa sổ bật lên sau khi click vào Run lần đầu tiên. Click vào Review Permissions để xem script cần những quyền gì.
Vì đây không phải là ứng dụng được Google xác minh do đó bạn sẽ nhận được một cảnh báo khác. Về cơ bản nó nói rằng, bạn chỉ nên tiến hành nếu tin tưởng nhà phát triển. Click vào Advanced, sau đó click vào Go to CreateNewDoc (hoặc bất cứ tên nào bạn đã đặt cho script này).
Xem lại các quyền mà script yêu cầu, sau đó click vào Allow.
Bây giờ, hãy truy cập vào Drive của bạn và nếu mọi thứ đúng, bạn sẽ thấy file Hello, World! ở đây, click đúp vào nó để mở.
Khi mở file, bạn sẽ thấy dòng văn bản từ code thêm vào tài liệu của bạn.
Bây giờ, nếu muốn nhận thông báo qua email khi tài liệu được tạo, bạn có thể thêm một vài dòng code để gửi tự động đến tài khoản Google của mình. Thêm các dòng mã dưới đây sau doc.getBody().appendParagraph('This document was created by Google Apps Script.'); nhưng trước dấu ngoặc nhọn cuối cùng:
// 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 phát. 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.
Click vào link này để mở trực tiếp file bên 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.
Click vào Tool và sau đó Script Editor.
Google Apps Script mở trong một tab mới với script trống. Tuy nhiên lần này script bị giới hạn trong dạng Sheet. Cũng giống như trước, xóa hàng trống và dán code sau:
//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.
Tuy nhiên nếu dữ liệu bên trong một bảng như ví dụ trên, script này sẽ không thay đổi kích thước bảng để khít với số trong đó.
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!