Sử dụng Google Scripts để thu thập dữ liệu tự động vào Google Docs

Bến Hà Trương
Bến Hà Trương
Jan 04 2021

 Google Documents là một trong những ứng dụng online giống như Microsoft Word. Khi sử dụng công cụ này bạn sẽ có thể sử dụng Google Scripts giúp tự động hóa công việc giúp bạn làm việc nhanh hơn, hiệu quả hơn. Trong bài viết này, hãy cùng Gitiho tìm hiểu 3 Scripts đơn giản của Google Scripts để thu thập dữ liệu tự động vào Google Docs

Google Sheets từ cơ bản tới nâng cao, công cụ thay thế Excel tuyệt vời để làm việc

Tự động thu thập dữ liệu vào Google Docs bằng Google Scripts

Tự động thu nhập dữ liệu từ thông tin người dùng nhập

Nếu bạn thường xuyên gửi email đến khách hàng, một mẫu tài liệu tự động có thể giúp bạn tiết kiệm vô số thời gian. Đây có thể là báo cáo doanh số hàng tháng cho người quản lý của bạn hoặc thông tin cập nhật hàng tuần cho đồng nghiệp. Mọi thứ bạn viết lên thường xuyên có thể được tự động hóa bằng mẫu tài liệu và Google Scripts.

Bước 1: Tạo một mẫu tài liệu. Đối với những từ bạn muốn điền, chỉ cần bao quanh chúng bằng hai dấu "##" , như ví dụ bên dưới.

Bạn có thể viết một dòng lệnh đơn giản để chạy Google Scripts mỗi khi bạn mở tài liệu này, nhắc bạn thêm các thông tin cần thiết.

Để tạo tập lệnh, hãy click vào menu Tools, chọn Script editor.

Trong cửa sổ trình chỉnh sửa, hãy xóa mã ở đó và thay thế nó bằng tập lệnh sau.

function myFunction() {
// Display a dialog box for each field you need information for.
var ui = DocumentApp.getUi();
//var response = ui.prompt('Enter Name', 'Enter sales person's name', ui.ButtonSet.OK);
var nameResponse = ui.prompt('Enter sales persons name');
var client1Response = ui.prompt('Enter client 1');
var sales1Response = ui.prompt('Enter sales 1');
var client2Response = ui.prompt('Enter client 2');
var sales2Response = ui.prompt('Enter sales 2');
var client3Response = ui.prompt('Enter client 3');
var sales3Response = ui.prompt('Enter sales 3');
var commissionResponse = ui.prompt('Enter commission');
var date = new Date();
//Make a copy of the template file
var documentId = DriveApp.getFileById('').makeCopy().getId();
//Rename the copied file
DriveApp.getFileById(documentId).setName(nameResponse.getResponseText() + date + ' Sales Report');
//Get the document body as a variable
var body = DocumentApp.openById(documentId).getBody();
//Insert the entries into the document
body.replaceText('##name##', nameResponse.getResponseText());
body.replaceText('##client1##', client1Response.getResponseText());
body.replaceText('##sales1##', sales1Response.getResponseText());
body.replaceText('##client2##', client2Response.getResponseText());
body.replaceText('##sales2##', sales2Response.getResponseText());
body.replaceText('##client3##', client3Response.getResponseText());
body.replaceText('##sales3##', sales3Response.getResponseText());
body.replaceText('##commission##', commissionResponse.getResponseText());
}

Tập lệnh này sẽ gọi ra lời nhắc khi tài liệu mở ra, hãy tạo một tài liệu mới với tên của người bán hàng và ngày hôm nay trong tiêu đề. Sau đó, nó sẽ điền vào các trường mẫu với thông tin bạn đã nhập.

Thay thế mã ID tài liệu trong tập lệnh ở trên bằng ID tài liệu của tài liệu mẫu. ID này có thể tìm thấy trên trình duyệt của bạn, như hình bên dưới.


Trong cửa sổ Google Scripts Editor, nhấp vào biểu tượng ổ đĩa để lưu tập lệnh.

Tiếp theo, nhấp vào biểu tượng chạy để kiểm tra xem script này có hoạt động không. Khi bạn chạy tập lệnh lần đầu tiên, bạn có thể cần phải phê duyệt quyền cho Tài khoản Google của mình để chạy tập lệnh.

Quay lại tài liệu mẫu, bạn sẽ thấy các cửa sổ nhắc lần lượt bật lên. Điền vào các trường với dữ liệu bạn muốn đi vào tài liệu.

Khi bạn hoàn tất, tập lệnh sẽ tạo một tài liệu mới trong thư mục gốc Google Drive của bạn với tất cả thông tin bạn đã điền vào.

Cuối cùng, bạn chỉ cần thiết lập tập lệnh để chạy mỗi khi mở tài liệu mẫu.

  • Trong cửa sổ Google Script Editor, nhấp vào Edit > Current project's triggers.
  • Nhấp vào nút Add Trigger ở góc dưới bên phải. Đảm bảo chọn On Open trong phần Select event type.
  • Bấm OK để hoàn thành.

Xem thêmSo sánh Microsoft Word và Google Docs: đâu là lựa chọn tối ưu cho bạn

Nhập dữ liệu Google Analytics vào tài liệu để tạo báo cáo trong Google Docs

Cho dù bạn sở hữu một trang web hay bạn làm việc cho ai đó sở hữu một trang web, yêu cầu thường xuyên là đo lường lưu lượng truy cập và hiệu suất trang web và cung cấp nó bên trong một báo cáo được định dạng.

Bạn có thể sử dụng phương pháp  tương tự như phần trên để xuất dữ liệu trang web từ Google Analytics và xuất dữ liệu đó sang báo cáo Google Documents.

Đầu tiên, hãy tạo một mẫu báo cáo giống như bạn đã làm trong phần trước. Trong ví dụ này, mẫu sẽ được thiết lập để cung cấp tổng số người dùng, phiên và số lần xem trang trong tuần qua.

Tiếp theo, chuyển đến Google Docs Script Editor bằng các bước tương tự như phần trước. Cho phép truy cập vào dữ liệu Google Analytics bằng cách thực hiện theo các bước bên dưới.

  1. Trong cửa sổ trình chỉnh sửa tập lệnh, hãy chọn Resources, sau đó chọn Advanced Google services
  2. Nhấp vào on/off bên cạnh API Google Analytics
  3. Bên dưới hộp thoại, nhấp vào Google Cloud Platform API Dashboard 
  4. Trong cửa sổ Cloud Platform, nhấp vào Enable APIs and Services
  5. Tìm kiếm Analytics và nhấp vào API Analytics
  6. Nhấp vào nút Enable  để bật API này cho tập lệnh của bạn
  7. Quay lại cửa sổ trình chỉnh sửa tập lệnh và nhấp vào OK để đóng cửa sổ Dịch vụ nâng cao của Google

Bây giờ bạn đã bật tích hợp với API Google Analytics, bạn đã sẵn sàng để tự động tạo báo cáo của mình. Dán đoạn mã sau vào trong cửa sổ mã trình soạn thảo tập lệnh.

function myFunction() {
var tableId = 'ga:';
var startDate = getLastNdays(7); // 1 week ago.
var endDate = getLastNdays(0);
var date = new Date();
var results = Analytics.Data.Ga.get(
tableId,
startDate,
endDate,
'ga:users,ga:sessions,ga:pageviews',
{'dimensions': 'ga:date'});
var data = [];
var totals = results.totalsForAllResults;
for (metricName in totals) {
data.push(totals[metricName]);
}
var users = data[0]
var sessions = data[1]
var pageviews = data[2]
// Output to Google Doc.
//Make a copy of the template file
var documentId = DriveApp.getFileById('').makeCopy().getId();
//Rename the copied file
DriveApp.getFileById(documentId).setName(date + ' Website Report');
//Get the document body as a variable
var body = DocumentApp.openById(documentId).getBody();
//Insert the entries into the document
body.replaceText('##startdate##', startDate);
body.replaceText('##enddate##', endDate);
body.replaceText('##users##', users);
body.replaceText('##sessions##', sessions);
body.replaceText('##pageviews##', pageviews);
}
function getLastNdays(nDaysAgo) {
var today = new Date();
var before = new Date();
before.setDate(today.getDate() - nDaysAgo);
return Utilities.formatDate(before, 'GMT', 'yyyy-MM-dd');
}

Thay thế mã ID tài liệu trong tập lệnh ở trên bằng ID tài liệu của tài liệu mẫu. Đồng thời thay thế ID Analytics bằng ID được hiển thị cho trang web của bạn trong Google Analytics.

Trong cửa sổ Google Script Editor, nhấp vào biểu tượng đĩa để lưu tập lệnh.

Nhấp vào biểu tượng chạy để kiểm tra xem nó có hoạt động không.

Khi bạn chạy tập lệnh lần đầu tiên, bạn sẽ phải phê duyệt quyền cho Tài khoản Google của mình để chạy tập lệnh.

Chạy tập lệnh sẽ tạo một tài liệu mới trong thư mục gốc Google Drive của bạn với tất cả thông tin về hiệu suất trang web trong tuần trước đã được điền vào.

Cuối cùng, bạn chỉ cần thiết lập Script để chạy hàng tuần.

  • Trong cửa sổ Google Script Editor, nhấp vào Edit và Current project's triggers
  • Nhấp vào nút Add Trigger ở góc dưới bên phải.
  • Thay đổi Select event source thành Time-driven.
  • Thay đổi Select type of time based trigger thành Week timer.
  • Nhấp vào nút Save để lưu lại các tùy chọn của bạn.

Liên kết tới Google Sheets để đưa dữ liệu tự động vào Google Docs

Đôi khi bạn cần chuyển thông tin từ bảng tính sang tài liệu cho những việc như phát triển báo cáo hoặc ghi nhật ký thông tin, bạn có thể tiết kiệm thời gian bằng cách tích hợp Google Sheets với Google Docs. Trong tập lệnh này, bạn sẽ sử dụng Google Scripts Editor bên trong Google Sheets, vì đó là nơi dữ liệu sẽ đến.

Đầu tiên, bạn sẽ tạo tài liệu bán hàng mẫu của mình giống như bạn đã làm trong phần đầu tiên của bài viết này, nhúng các biến được bao quanh bởi ký hiệu "##" .

Dữ liệu cho các báo cáo này sẽ đến từ bảng tính Google Sheets của bạn, có thể đơn giản như hình bên dưới.

Để tạo tập lệnh của bạn, bên trong Google Sheets, hãy nhấp vào mục menu Tools và nhấp vào Script Editor. Dán tập lệnh sau vào cửa sổ tập lệnh của trình soạn thảo.

function myFunction() {
var date = new Date();
// Opens SS by its ID
var ss = SpreadsheetApp.openById("");
var sheet = ss.getSheetByName('Sam'); // or whatever is the name of the sheet
//Make a copy of the template file
var documentId = DriveApp.getFileById('').makeCopy().getId();
//Rename the copied file
DriveApp.getFileById(documentId).setName('Sam ' + date + ' Sales Report');
//Get the document body as a variable
var body = DocumentApp.openById(documentId).getBody();
var range = sheet.getRange("A2:B4");
body.replaceText('##name##', 'Sam');
for (var i=1; i<4; i++) {
cell = range.getCell(i,1);
client = cell.getValue();
body.replaceText('##client' + i + '##', client);
cell = range.getCell(i,2);
sales = cell.getValue();
body.replaceText('##sales' + i + '##', sales);
}
}

Thay thế ID tài liệu trong tập lệnh ở trên bằng ID tài liệu của tài liệu mẫu. Đồng thời thay thế ID Google Sheets bằng ID dữ liệu Google Sheets của bạn.

Trong cửa sổ trình chỉnh sửa tập lệnh của Google, nhấp vào biểu tượng đĩa để lưu tập lệnh.

Nhấp vào biểu tượng chạy để kiểm tra xem nó có hoạt động không. Hãy nhớ rằng khi bạn chạy tập lệnh lần đầu tiên, bạn sẽ cần phê duyệt các quyền để nó có thể truy cập vào Tài khoản Google của bạn.

Khi bạn chạy tập lệnh, nó sẽ tạo một tài liệu mới trong thư mục gốc Google Drive của bạn với tất cả dữ liệu bán hàng từ bảng tính.


Bạn cũng có thể duyệt qua các tab trang tính và tạo một báo cáo doanh số gửi cho mọi nhân viên bán hàng trong nhóm của bạn.

Xem thêm: Cách kết nối Google Analytics với Google Data Studio

Kết luận

Google Docs có vẻ giống như một trình xử lý văn bản đơn giản, nhưng như bạn có thể thấy khi bạn tích hợp Google Analytics, nó sẽ nhân rộng chức năng của ứng dụng đám mây. Trong bài viết trên Gitiho đã hướng dẫn bạn 3 tập lệnh Google Scripts thu thập dữ liệu tự động vào Google Docs. Chúc bạn thực hiện thành công và đừng quên theo dõi chúng mình để xem thêm các kiến thức bổ ích khác nhé!

Nhận tư vấn và đăng ký khóa học ở đây.

Bài viết tham khảo khác:

Cách sử dụng những tính năng thường dùng với Google Docs (Phần 1)

Những tính năng thường dùng với Google Docs (Phần 2)

Hướng dẫn cách thêm hình mờ (Watermark) vào Google Docs

Cách tạo Business Card miễn phí với Google Docs và Microsoft Word

25 Mẹo Google Docs vô cùng hữu ích có thể bạn chưa biết

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

Bài viết liên quan

Những tính năng thường dùng với Google Docs (Phần 2)

Những tính năng thường dùng với Google Docs (Phần 2)

Cách tạo và soạn thảo văn bản trên Google Docs

Cách tạo và soạn thảo văn bản trên Google Docs

Hướng dẫn cách thêm hình mờ (Watermark) vào Google Docs

Hướng dẫn cách thêm hình mờ (Watermark) vào Google Docs

Hướng dẫn 6 cách sử dụng Google Doc kết hợp Google Drawing vô cùng hữu ích

Hướng dẫn 6 cách sử dụng Google Doc kết hợp Google Drawing vô cùng hữu ích

25 Mẹo Google Docs vô cùng hữu ích có thể bạn chưa biết

25 Mẹo Google Docs vô cùng hữu ích có thể bạn chưa biết

Hướng dẫn bốn cách lưu hình ảnh từ Google Docs về máy tính rất dễ thực hiện

Hướng dẫn bốn cách lưu hình ảnh từ Google Docs về máy tính rất dễ thực hiện

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội