Google Sheets đã là một công cụ mạnh mẽ, nhưng khi kết hợp với Google Apps Script, khả năng của nó được nâng lên một tầm cao mới, gần như không giới hạn. Nhiều người dùng Sheets đã bỏ lỡ tiềm năng to lớn này trong nhiều năm. Một khi khám phá Apps Script, bạn sẽ nhận ra cách nó có thể tự động hóa những công việc lặp lại mà trước đây bạn không hề nghĩ rằng đang làm chậm tiến độ của mình. Apps Script không chỉ giúp bạn tiết kiệm thời gian mà còn biến Google Sheets thành một nền tảng tùy biến mạnh mẽ, phù hợp với mọi nhu cầu công việc.
Tự Động Hóa Các Tác Vụ Lặp Lại Trên Google Sheets
Nếu bạn cảm thấy mệt mỏi khi phải lặp đi lặp lại một tác vụ trong Google Sheets, dù là chèn ngày tháng, làm sạch văn bản, áp dụng định dạng hay xuất dữ liệu, Apps Script chính là giải pháp hữu hiệu để tự động hóa chúng.
Ví dụ, bạn có thể dễ dàng chèn ngày hiện tại vào Google Sheets bằng cách nhấn Ctrl + ;
trên Windows hoặc Cmd + ;
trên Mac. Tuy nhiên, nếu bạn cần định dạng cụ thể như yyyy-MM-dd
, bạn phải sử dụng công thức hoặc định dạng thủ công. Với Apps Script, bạn có thể tạo một hàm lấy ngày hiện tại, định dạng theo mong muốn và sau đó chèn vào các ô được chọn.
Bạn chỉ cần thực hiện việc này một lần và có thể tái sử dụng bất cứ khi nào cần. Dưới đây là ví dụ về đoạn mã script:
function insertCurrentDate() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var selectedCell = sheet.getActiveCell();
var currentDate = new Date();
var formattedDate = Utilities.formatDate(currentDate, Session.getScriptTimeZone(), 'yyyy-MM-dd');
selectedCell.setValue(formattedDate);
}
Trong phần tiếp theo, chúng ta sẽ khám phá cách chạy đoạn mã trên từ bên trong một bảng tính Google Sheets để bạn có thể áp dụng ngay lập tức.
Tạo Bảng Tính Tùy Chỉnh Chuyên Nghiệp
Một trong những cách Apps Script giúp bạn tùy chỉnh bảng tính của mình là cho phép bạn tạo các công cụ chuyên biệt để tinh gọn quy trình làm việc. Ví dụ, bạn có thể chèn một nút bấm để áp dụng định dạng hoặc thực hiện các phép tính nâng cao, hoặc tạo các trang tổng quan (dashboards) giúp bạn phân tích dữ liệu dễ dàng. Những khả năng này vượt xa những gì Google Sheets có thể làm được một mình.
Tiếp tục với ví dụ từ phần trước, chúng ta có thể thêm một mục menu tùy chỉnh cho phép chạy hàm từ bên trong bảng tính. Đây là đoạn script để thực hiện điều đó (chèn đoạn này phía trên hàm trong phần trước):
function onOpen() {
var ui = SpreadsheetApp.getUi();
ui.createMenu('My Menu').addItem('Insert Current Date', 'insertCurrentDate').addToUi();
}
Sau khi chạy đoạn mã này trong Apps Script và làm mới Google Sheets, bạn sẽ thấy mục My Menu xuất hiện trên thanh menu trên cùng. Giờ đây, bạn có thể chèn ngày hiện tại vào một ô đã chọn bằng cách nhấp vào My Menu > Insert Current Date.
Menu tùy chỉnh "My Menu" với lựa chọn "Insert Current Date" được tạo trong Google Sheets thông qua Google Apps Script.
Xây Dựng Hàm Tính Toán Riêng Biệt
Google Sheets không phải lúc nào cũng có sẵn các hàm bạn cần để thực hiện các phép tính cụ thể. Trong những trường hợp này, việc tạo hàm riêng của bạn bằng Apps Script, chèn phép tính vào đó và sử dụng nó trong bảng tính (giống như bất kỳ hàm tích hợp nào khác) là giải pháp tối ưu. Điều này cũng có nghĩa là bạn không phải lặp lại các phép tính phức tạp trên toàn bộ script, làm cho bảng tính của bạn sạch hơn và dễ đọc hơn.
Hãy xem xét hàm dưới đây, nó nhận vào một ngày và kiểm tra xem đã bao nhiêu ngày trôi qua kể từ ngày hiện tại để xác định ngày đến hạn:
function CHECKDUEDATE(inputDate) {
var today = new Date();
var timeDiff = today - inputDate;
var daysDiff = Math.floor(timeDiff / (1000 * 60 * 60 * 24));
if (daysDiff < 0) {
return "Overdue!";
} else if (daysDiff > 0) {
return "Due in " + daysDiff.toString() + " days!";
} else {
return "Due today!";
}
}
Tùy thuộc vào ngày được nhập, hàm này sẽ hiển thị “Quá hạn!” nếu số ngày chênh lệch nhỏ hơn 0, số ngày còn lại nếu lớn hơn 0, hoặc “Đến hạn hôm nay!” nếu bằng 0.
Điểm đặc biệt của Apps Script là bạn có thể tạo một trigger dựa trên thời gian để chạy hàm vào một thời điểm cụ thể (ví dụ: nửa đêm) nhằm tự động cập nhật ngày đến hạn. Nó thậm chí có thể được sử dụng cho định dạng có điều kiện – khả năng là vô tận. Điều này giúp tối ưu hóa việc quản lý dữ liệu và thông báo trong Google Sheets.
Tích Hợp Apps Script Với Các Dịch Vụ Google Khác
Apps Script cho phép bạn tích hợp bảng tính của mình với các dịch vụ Google khác, bao gồm Gmail, Google Drive và Google Docs. Khả năng này giúp bạn xây dựng các quy trình làm việc toàn diện, bao trùm nhiều công cụ trong hệ sinh thái Google Workspace.
Dưới đây là một ví dụ script trích xuất nội dung văn bản từ một tài liệu Google Docs và chèn vào ô A1 của bảng tính:
function getBodyTextFromGoogleDoc() {
const doc = DocumentApp.openById("insert Google Docs ID here");
const bodyText = doc.getBody().getText();
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
const targetRange = sheet.getRange("A1");
targetRange.setValue(bodyText);
}
Hãy đảm bảo thay thế insert Google Docs ID here trong dòng thứ hai bằng ID của tài liệu Google Docs mà bạn muốn lấy nội dung văn bản (đừng xóa dấu ngoặc kép).
Apps Script: Không Khó Như Bạn Tưởng
Nếu bạn đã có một chút kiến thức cơ bản về lập trình, Apps Script đặc biệt dễ học. Điều này càng đúng nếu bạn quen thuộc với JavaScript, vì đây là ngôn ngữ chính được nền tảng này sử dụng. Bạn có thể bắt đầu từ những tự động hóa và tác vụ đơn giản (các phép tính cơ bản và gửi email), sau đó dần dần xây dựng lên.
Giao diện trình chỉnh sửa Google Apps Script IDE, nơi viết và quản lý các đoạn mã script.
Ngay cả khi bạn chưa bao giờ viết mã trong đời, Apps Script có thể là một cách tuyệt vời để bắt đầu học lập trình. Vì bạn chủ yếu sử dụng nó để tự động hóa các tác vụ trong Google Sheets, bạn sẽ thấy kết quả ngay lập tức, đây là một động lực lớn. Với điều đó, bạn vẫn cần tìm hiểu các khái niệm lập trình cơ bản (ví dụ: biến, vòng lặp và hàm) – Google có các hướng dẫn tuyệt vời và Apps Script có một cộng đồng hỗ trợ đằng sau để giúp bạn.
Hơn nữa, không cần thiết lập phức tạp vì nó chạy trên đám mây. Bạn không cần phần mềm hoặc thư viện bổ sung. Apps Script không chỉ là một trong nhiều tính năng tuyệt vời của Google Docs mà bạn có thể bỏ lỡ, mà nó còn đáng để thử. Điều thú vị về Apps Script là bạn cũng có thể sử dụng nó trong các ứng dụng Google Workspace khác như Docs và Slides. Ví dụ, bạn có thể tạo một công cụ chuyển đổi định dạng chữ đơn giản trong Google Docs vì tính năng đó không được tích hợp sẵn.
Với Apps Script, Google Sheets không chỉ là một bảng tính thông thường mà còn là một nền tảng lập trình mạnh mẽ, mở ra cánh cửa cho vô vàn khả năng tự động hóa và tùy chỉnh. Hãy bắt đầu khám phá Apps Script ngay hôm nay để nâng cao năng suất và biến Google Sheets thành công cụ mạnh mẽ hơn bao giờ hết!