Hướng dẫn gửi Email tự động trong Google Sheet bằng Google Script

Google Script là một công cụ mạnh mẽ được sử dụng để tự động hoá nhiều tác vụ trong Google như Sheets và Docs. Và giờ khả năng tự động gửi email càng biến nó trở thành một công cụ mạnh mẽ hơn. Bạn là nhân viên hàng tháng phải gửi hàng tá email cho sếp bằng các công thức tính tự động trong Google Sheets hoặc bạn là quản lý đã phải bỏ hàng giờ để gửi email cho các thành viên trong nhóm, vậy thì chức năng Google Script sẽ giúp bạn hoàn thành nhiệm vụ này và nhiều hơn thế nữa. Chỉ cần bỏ một chút thời gian theo dõi và thực hiện theo những chỉ dẫn trong bài này, bạn sẽ không bao giờ phải gửi dữ liệu thủ công nữa. Hãy để Google Script làm “trợ lý riêng” thực hiện tất cả công việc cho bạn.

Tạo trang tính để gửi Email

Bước đầu tiên là thiết lập một trang tính gồm tên, địa chỉ email và tin nhắn đến những người mà bạn muốn gửi email. Ví dụ, bạn tạo một bảng tin để tự động nhập tất cả các bài báo được xuất bản trong tháng từ công cụ Google Analytics. Sau đó tạo một trang tính 'All Authors' đã tổng hợp các bài báo được xuất bản cho mỗi tác giả, và bây giờ gửi cho mỗi tác giả một email với số lượng bài báo của họ. Để bắt đầu, tạo trang tính email đặc biệt của bạn bằng cách thêm một trang tính mới vào bảng tính hiện tại và đặt tên cho nó là 'Send emails' (Gửi email).
Hướng dẫn gửi Email tự động trong Google Sheet bằng Google Script
Trong trang Send emails mới này, bạn sẽ tạo tiêu đề. Mỗi hàng trong bảng tính này sẽ đại diện cho một email cá nhân sẽ được gửi đi. Trong ví dụ trên, tranh tính gồm tên người nhận, địa chỉ email và tin nhắn đặt bên trong script.
Bạn có thể tạo một email với kích thước và cấu trúc bất kỳ bằng cách sử dụng các cột để ghép thông tin cố định và thông tin thay đổi.
Thông tin cố định chỉ là văn bản đã nhập vào ô và không thay đổi theo từng tháng. Nó chỉ là một phần của email mà luôn được giữ nguyên. Tuy nhiên, đối với dữ liệu bạn muốn thay đổi mỗi tháng, bạn có thể chèn các chức năng nhập dữ liệu có liên quan từ bất kỳ trang tính nào khác trong bảng tính của bạn.
Điều chúng ta muốn ở đây là, bất cứ khi nào mở trang tính để xem lại báo cáo tự động, bạn có thể kích vào item menu để gửi email qua Google Script và gửi kết quả tới tất cả mọi người. Bạn sẽ thấy hướng dẫn tùy chỉnh item menu mới ở cuối bài viết. Khi hoàn tất việc tạo trang tính, nó sẽ giống như hình bên dưới:
Sau khi tạo trang tính với tất cả email cá nhân, bước tiếp theo là viết script!

Viết script gửi email tự động

Để viết srcipt, bạn cần phải sử dụng trình chỉnh sửa script. Chọn Tools > Script editor.
Trình chỉnh sửa script như ảnh bên dưới. Chọn tạo hàm mới ở trên cùng bên tay phải.
Copy và dán scritp này vào phần viết script. 
function sendArticleCountEmails() { var ss = SpreadsheetApp.getActiveSpreadsheet(); ss.setActiveSheet(ss.getSheetByName('Send-Emails')); var sheet = SpreadsheetApp.getActiveSheet(); var dataRange = sheet.getRange('A2:F4'); var data = dataRange.getValues(); for (i in data) { var rowData = data[i]; var emailAddress = rowData[1]; var recipient = rowData[0]; var message1 = rowData[2]; var message2 = rowData[3]; var parameter2 = rowData[4]; var message3 = rowData[5]; var message = 'Dear ' + recipient + ',nn' + message1 + ' ' + message2 + ' ' + parameter2 + ' ' + message3; var subject = 'Your article count for this month'; MailApp.sendEmail(emailAddress, subject, message); } }[/code] Script này có vẻ khá phức tạp, nhưng thực sự không phải toàn bộ. Hãy “mổ xẻ” nó để biết chính xác mỗi dòng viết gì.

Chia nhỏ Code

Để hàm này hoạt động đúng cách, bạn cần đảm bảo rằng trang tính lưu tất cả thông tin email của bạn là trang tính hiện hành. Nếu không, không thể thực hiện các bước tiếp theo sau đây. Đó là lý do xuất hiện hai dòng code này:
var ss = SpreadsheetApp.getActiveSpreadsheet(); ss.setActiveSheet(ss.getSheetByName('Send-Emails'));
Tiếp theo, trích xuất tất cả các dữ liệu từ trang tính. Hàm sheet.GetRange() sẽ lấy thông tin từ bất kỳ phạm vi nào mà bạn điền trong dấu ngoặc kép. Tiếp theo, hàm dataRange.getValues () sẽ trích xuất các giá trị và lưu trữ chúng vào một mảng hai chiều được gọi là data.
var sheet = SpreadsheetApp.getActiveSheet(); var dataRange = sheet.getRange('A2:F4'); var data = dataRange.getValues();
Bây giờ tất cả các dữ liệu được lưu trữ trong một mảng, bạn có thể lặp lại bằng cách sử dụng một vòng lặp for. Mỗi phần tử của mảng là một hàng chứa mảng một chiều của các phần tử cột. Bạn có thể tham chiếu mỗi cột bằng số.
var rowData = data[i]; var emailAddress = rowData[1]; var recipient = rowData[0]; var message1 = rowData[2]; var message2 = rowData[3]; var parameter2 = rowData[4]; var message3 = rowData[5];[/code] Như bạn thấy ở trên, các phần tử cột được kéo vào mảng một chiều được gọi là rowData. Sau đó, chuyển đến cột thứ hai (để lấy địa chỉ email) bằng cách tham chiếu rowData [1], phần tử thứ hai của mảng (phần tử đầu tiên của mảng luôn luôn là số không). Bước tiếp theo là gộp lại tất cả các phân đoạn của tin nhắn thành nội dung của email. Bạn có thể chỉnh sửa format nội dung email bằng cách sử dụng ký tự n để quay về đầu dòng. Đây là dòng code ghép các phân đoạn tin nhắn:
var message = 'Dear ' + recipient + ',nn' + message1 + ' ' + message2 + ' ' + parameter2 + ' ' + message3;[/code] Ký tự + là lệnh nối. Bạn đặt văn bản tĩnh bên trong các dấu nháy đơn. Vì vậy, tin nhắn này được ghép lại với nhau bằng cách đặt từ 'Dear ' ở phía trước biến của người nhận (chú ý 'Dear ' có một dấu cách). Tiếp theo, bạn thêm hai ký tự n vào cuối để tin nhắn thành hai đoạn. Tiếp theo, thêm phân đoạn tin nhắn đầu tiên, khoảng trắng, phân đoạn tin nhắn thứ hai, khoảng trắng, biến sẽ được đưa vào tin nhắn mỗi tháng và cuối cùng là phần cuối cùng của tin nhắn. Bạn có thể có thêm nhiều phần tin nhắn bằng cách sử dụng nhiều cột hơn để tạo toàn bộ tin nhắn theo từng phần. Hai dòng cuối cùng của code để đặt tiêu đề cho email (có thể bao gồm dữ liệu từ bảng tính nếu bạn muốn), và cuối cùng là sendEmail ().

Làm thế nào để kích hoạt script

Quay trở lại cửa sổ Script Editor, chỉ cần tìm kiếm hàm 'onOpen'. Nếu có sẵn hàm này, bạn sẽ thấy một loạt code bên trong dấu ngoặc đơn. Kéo xuống dưới cùng của đoạn code đó và chèn các dòng sau:
var spreadsheet = SpreadsheetApp.getActive(); var menuItems = [ {name: 'Send Emails', functionName: 'sendArticleCountEmails'} ]; spreadsheet.addMenu('Send Emails', menuItems);
Chỉ cần đảm bảo gõ chính xác tên của hàm trong các dấu nháy đơn cho tham số functionName. Thao tác này sẽ tải item menu tùy chỉnh vào bảng tính mỗi khi bạn mở trang.
Bây giờ, khi nào muốn mở bảng tính hàng tháng để xem lại tất cả dữ liệu, bạn chỉ cần nhấp vào item menu để gửi email. Thao tác này sẽ chạy hàm mới và gửi tất cả những email đó cho bạn. Một công việc mà bạn có thể mất vài giờ nhưng giờ chỉ cần một cú nhấp chuột duy nhất!

Google Script giúp bạn tiết kiệm thời gian

Đây chỉ là một trong nhiều cách bạn có thể sử dụng Google Script để tự động hóa mọi việc. Tuy thiết lập tự động hóa ban đầu hơi mất thời gian, nhưng mỗi phút bạn dành ra để thiết lập đã giúp bạn tiết kiệm được nhiều giờ sau đó. Chỉ cần suy nghĩ về những điều tuyệt vời mà bạn có thể làm với những giờ đó thì còn ngần ngại gì mà không bắt tay vào thử ngay hôm nay! 

TIN LIÊN QUAN

Gửi email qua Google và cách chặn email từ Google+

Google vừa công bố một tính năng mới hoạt động như một cầu nối giữa các mạng xã hội và email cá nhân. Bất cứ ai trên Google+ đều có thể gửi email trực tiếp tới địa chỉ email của bạn.Tuy nhiên điều này lại làm bạn khó chịu. Vậy làm thế nào để không

Google hiển thị email, hình ảnh và các dữ liệu của riêng bạn ngay trong trang tìm kiếm

Google có vẻ như đang thử nghiệm chức năng 'personal' cho phép bạn xem email, chuyến bay, lịch hẹn, hóa đơn mua hàng, nói chung là bất kì thứ gì mà Gmail có thể xử lí, ở ngay trong trang tìm kiếm. Ngoài ra bạn còn coi được những ảnh mình đã upload

Google công khai đọc email của người dùng

Google đã có thể công khai đọc và phân tích email của người dùng Gmail sau khi thay đổi một số điều khoản trên dịch vụ Gmail của mình.

Tiện ích SessionBox giúp đăng nhập một lần hàng chục tài khoản Facebook, Email

Bạn có nhiều tài khoản Facebook hoặc cần theo dõi nhiều Email cùng lúc? Chắc hẳn trước đây để có thể sử dụng được nhiều tài khoản một lần, bạn thường đăng nhập bằng tab ẩn danh hoặc nhiều trình duyệt web khác nhau.

Google đang thử nghiệm cho phép thêm dịch vụ email bên thứ ba vào Gmail trên iOS

Ứng dụng Gmail trên iOS trước giờ chỉ cho phép người dùng thêm tài khoản Google Gmail, và sắp tới thì nó có thể sẽ linh hoạt hơn với việc hỗ trợ các dịch vụ email bên thứ ba. Hiện tại thì Google đã mở trang thử nghiệm tính năng này và những ai nhận

Cần làm gì sau khi lỡ nhấn vào link Google Docs giả mạo?

Hãy làm ngay theo 5 điều giúp bảo vệ thông tin cá nhân dưới đây để tránh tối đa những thiệt hại do vụ lừa đảo giả mạo Google Docs gây ra cho bạn.

Thủ thuật tạo bản sao văn bản cho người nhận khi chia sẻ file Google Drive

Chỉ cần một lần dùng thử thủ thuật này, bạn sẽ nhận ra lợi ích tuyệt vời của nó khi chia sẻ tập tin cùng đồng nghiệp và bạn bè qua Google Drive.

Google thử nghiệm tính năng mới, cho phép người dùng truy cập email từ bên thứ ba trên Gmail của iOS

Như các bạn đã biết, một trong số những điểm khó chịu nhất khi sử dụng ứng dụng Gmail trên iOS chính là không hỗ trợ bất kỳ địa chỉ mail của bên thứ ba nào khác. Tuy nhiên, theo trang Engadget chia sẻ thì Google đang tiến hành cho phép người dùng

THỦ THUẬT HAY

Cách tính sim thăng quan tiến chức chuẩn nhất từ chuyên gia

Sim thăng quan tiến chức là gì? Liệu sử dụng sim thăng tiến này có thể giúp người dùng gặp nhiều thuận lợi và hanh thông trong sự nghiệp công danh hay không?

Hướng dẫn đăng video lên YouTube

YouTube là kho tàng video kĩ thuật số lớn nhất thế giới hiện nay. Với quy mô cực kì đồ sộ cùng số lượng video siêu lớn liên tục được đăng tải hàng phút – hàng giờ mỗi ngày, hẳn bạn cũng sẽ muốn biết cách đăng video lên

7 tính năng mới rất hữu ích giúp nâng cao trải nghiệm trên Zalo

Đây là tính năng mới trên Zalo sẽ giúp nâng cao trải nghiệm khi gọi video, chúng ta có thể chia đôi màn hình giúp mang lại cảm giác như 2 người đang đứng trò chuyện trực tiếp với nhau.

Cách điều chỉnh AirPods trên iOS 11

Trên bản iOS 11, AirPods cũng được cung cấp thêm nhiều tính năng mới, đặc biệt là khả năng điều chỉnh hoạt động của AirPods với các tùy chọn mới.

Hướng dẫn cách kết nối và sử dụng Apple Pencil

Apple Pencil là một phụ kiện được Apple giới thiệu đi kèm với iPad Pro trong sự kiện ra mắt sản phẩm của mình. Vậy Apple Pencil là gì? Làm thế nào để kết nối và sử dụng Apple Pencil? Bài viết này sẽ giới thiệu về Apple

ĐÁNH GIÁ NHANH

Trên tay đồng hồ báo thức khủng long, cảm ứng âm thanh, đo nhiệt độ xung quanh.

Hôm nay mình trên tay một chiếc đồng hồ báo thức rất dễ thương hình chú khủng long, thiết kế nhỏ gọn, chất liệu là ABS nên dễ dàng lau chùi. Ngoài ra sản phẩm còn có cảm ứng âm thanh, đèn thay đổi nhiều màu vào ban đêm

Đánh giá nhanh Huawei Y7 Pro 2018 với màn hình tràn viền, camera sau kép

Khi nhìn thoáng qua kiểu dáng bên ngoài, phần lớn người dùng khó có thể tin rằng Y7 Pro lại cho giá bán dưới 4 triệu đồng khi sở hữu thiết kế màn hình tràn viền, mặt lưng bố trí camera sau kép. Y7 Pro cũng là mẫu điện

Đánh giá nhanh thiết kế Sony Xperia XZ2: Sự thay đổi lớn theo hướng tích cực

Hộp đựng Xperia XZ2 không có gì lạ khi làm bằng bìa cứng, màu sắc đơn giản và thanh lịch. Trong hộp có máy, củ sạc, cáp USB Type-C, jack chuyển đổi từ USB Type-C sang cổng 3,5mm (do Sony đã bỏ cổng tai nghe 3,5mm trên