Menu

Tự động hóa quản lý dữ liệu với Google Sheets và Apps Script: Tích hợp API đơn giản

Phi Thanh Năng 18/03/2026 19:01 163 lượt xem 3 trả lời

Chào các anh chị em trong diễn đàn,

Dạo gần đây mình có tìm hiểu sâu hơn về Google Sheets và Google Apps Script để giải quyết một số bài toán tự động hóa trong công việc. Ngoài các hàm cơ bản, Apps Script còn cho phép chúng ta tương tác với các dịch vụ bên ngoài thông qua API, mở ra rất nhiều khả năng mới.

Mình muốn chia sẻ một ví dụ nhỏ về cách tích hợp một API đơn giản vào Google Sheets để lấy dữ liệu thời tiết. Giả sử chúng ta cần cập nhật thông tin thời tiết hàng ngày cho một khu vực. Thay vì vào web xem rồi copy-paste thủ công, chúng ta có thể tự động hóa việc này.

Các bước thực hiện:

  • Lấy API Key: Đầu tiên, bạn cần đăng ký để lấy API key từ một nhà cung cấp dịch vụ thời tiết miễn phí (ví dụ: OpenWeatherMap).
  • Viết Apps Script: Trong Google Sheets, vào Extensions > Apps Script để mở trình soạn thảo. Viết một hàm đơn giản để gọi API bằng hàm UrlFetchApp.fetch().
  • Xử lý dữ liệu trả về: API thường trả về dữ liệu dưới dạng JSON. Chúng ta cần dùng JSON.parse() để chuyển đổi chuỗi JSON thành đối tượng JavaScript có thể làm việc được.
  • Cập nhật vào Sheet: Lấy các thông tin cần thiết (nhiệt độ, độ ẩm, mô tả...) và ghi vào các ô tương ứng trên Google Sheet.
  • Thiết lập Trigger: Cài đặt một trigger để hàm tự động chạy định kỳ (ví dụ: mỗi giờ một lần).

Đoạn code mẫu để gọi API và lấy nhiệt độ có thể trông như thế này:

function getWeather() {  var apiKey = 'YOUR_API_KEY';  var city = 'Hanoi';  var url = 'http://api.openweathermap.org/data/2.5/weather?q=' + city + '&appid=' + apiKey + '&units=metric&lang=vi';    try {    var response = UrlFetchApp.fetch(url);    var data = JSON.parse(response.getContentText());    var temperature = data.main.temp;        SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1').getRange('A1').setValue(temperature);  } catch (e) {    Logger.log('Error fetching weather: ' + e.toString());  }}

Lưu ý: Hãy thay 'YOUR_API_KEY' bằng API key thật của bạn và 'Hanoi' bằng thành phố bạn muốn theo dõi.

Đây chỉ là một ví dụ cơ bản, nhưng nó cho thấy tiềm năng của việc kết hợp Google Sheets với Apps Script để tự động hóa nhiều tác vụ khác nhau, không chỉ giới hạn trong phạm vi Excel. Hy vọng chia sẻ này hữu ích cho mọi người!

0

Hay quá bạn ơi! Mình cũng đang mày mò về Apps Script để tự động hóa mấy vụ báo cáo hàng ngày. Cái vụ tích hợp API này mở ra nhiều cánh cửa thật. Bạn có thể chia sẻ thêm về API thời tiết bạn dùng được không? Ví dụ như tên API, cách lấy key, và làm sao để gọi nó từ Apps Script cho chi tiết hơn không? Cảm ơn bạn đã chia sẻ!

2

Cảm ơn bạn đã chia sẻ kinh nghiệm rất hay này! Việc dùng Apps Script để gọi API đúng là một bước tiến lớn trong việc tự động hóa. Mình cũng đang tìm hiểu cách tích hợp các dịch vụ bên ngoài vào Sheets. Bạn có thể cho mình biết thêm về cách xử lý dữ liệu trả về từ API không? Ví dụ như làm sao để phân tích và hiển thị dữ liệu đó lên các ô trong bảng tính một cách gọn gàng nhất?

2

Hay quá bạn ơi! Mình cũng đang mày mò về Apps Script để tự động hóa mấy vụ báo cáo hàng ngày. Cái vụ tích hợp API này mở ra nhiều cánh cửa thật.

Bạn có thể chia sẻ thêm về API thời tiết bạn dùng được không? Ví dụ như tên API, cách lấy key, và làm sao để gọi nó từ Apps Script cho chi tiết hơn không? Cảm ơn bạn đã chia sẻ!

1

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký