Tự Động Hóa Doanh Nghiệp

Tự Động Hóa Báo Cáo: Dashboard Real-time Với Google Sheets

Tuân HoangTuân Hoang
8 tháng 3, 2026
Cập nhật: 24 tháng 3, 2026
13 phút đọc
Tự Động Hóa Báo Cáo: Dashboard Real-time Với Google Sheets

Xây dựng dashboard báo cáo real-time với Google Sheets — tự động cập nhật, gửi email định kỳ và hiển thị KPI quan trọng mà không cần phần mềm BI đắt tiền.

Hướng dẫn từng bước tạo hệ thống báo cáo tự động hoàn chỉnh cho SME Việt Nam — từ thiết kế dashboard đến automation gửi báo cáo hàng ngày.

1. Vấn Đề Với Báo Cáo Thủ Công

Hầu hết SME Việt Nam đang lãng phí 2-4 giờ mỗi ngày chỉ để tạo báo cáo — copy dữ liệu từ nhiều nguồn, dán vào Excel, định dạng, và gửi email. Tệ hơn, báo cáo này thường đã lỗi thời ngay khi được gửi đi.

Vấn đề phổ biến với báo cáo thủ công

  • Dữ liệu từ nhiều nguồn phải copy-paste thủ công → dễ sai sót
  • Báo cáo ngày hôm nay chỉ xem được dữ liệu đến hôm qua
  • Mỗi người tạo báo cáo theo cách khác nhau → không nhất quán
  • Sếp hỏi số liệu đột xuất → phải chạy tìm dữ liệu mất 30 phút
  • Không có alert khi chỉ số vượt ngưỡng cảnh báo

2. Kiến Trúc Hệ Thống Báo Cáo Tự Động

Một hệ thống báo cáo tự động hoàn chỉnh gồm 3 tầng:

Tầng 1: Thu Thập Dữ Liệu (Data Layer)

Dữ liệu từ nhiều nguồn tự động đổ vào Google Sheets: phần mềm bán hàng, Google Forms, API, file CSV upload tự động.

Tầng 2: Xử Lý và Tổng Hợp (Processing Layer)

Google Sheets functions (SUMIF, COUNTIF, QUERY, PIVOT) tự động tính toán KPI, tổng hợp theo ngày/tuần/tháng.

Tầng 3: Hiển Thị và Phân Phối (Presentation Layer)

Dashboard Google Sheets với biểu đồ cập nhật tự động. Apps Script gửi báo cáo PDF qua email định kỳ.

3. Xây Dựng Dashboard Google Sheets Hiệu Quả

3.1 Cấu Trúc Sheet Chuẩn

Tab Sheet Mục đích Ai xem
Raw DataDữ liệu thô từ nguồn — KHÔNG chỉnh sửa tayHệ thống tự ghi
CalculationsBảng tính KPI trung gian, công thức tổng hợpẨn với user thường
DashboardGiao diện hiển thị chính, biểu đồ, KPI cardsBan lãnh đạo
Detail ReportsBáo cáo chi tiết theo danh mụcQuản lý bộ phận
ConfigCấu hình: email nhận báo cáo, ngưỡng cảnh báoAdmin

3.2 KPI Card Tự Động Cập Nhật

Mỗi KPI card trên dashboard gồm 3 thành phần: giá trị hiện tại, so sánh kỳ trước và màu cảnh báo (xanh/đỏ):

// Doanh thu hôm nay
=SUMIF(RawData!A:A, TODAY(), RawData!D:D)

// % tăng trưởng so với hôm qua
=(DoanhThuHomNay - DoanhThuHomQua) / DoanhThuHomQua * 100

// Conditional formatting: xanh nếu > 0, đỏ nếu < 0
// Format → Conditional formatting → Custom formula:
// =C2 > 0  → màu xanh
// =C2 < 0  → màu đỏ

4. Tự Động Hóa Nguồn Dữ Liệu

4.1 Kéo Dữ Liệu Từ API Bán Hàng

Nhiều phần mềm bán hàng Việt Nam (KiotViet, Sapo, MISA) có API. Dùng Apps Script để tự động kéo dữ liệu mỗi giờ:

function layDuLieuBanHang() {
  const API_KEY = PropertiesService.getScriptProperties().getProperty('API_KEY');
  const url = 'https://api.kiotviet.vn/v3/orders?pageSize=100&status=3';

  const response = UrlFetchApp.fetch(url, {
    headers: { 'Retailer': 'your-store', 'Authorization': 'Bearer ' + API_KEY }
  });

  const data = JSON.parse(response.getContentText());
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Raw Data');

  data.data.forEach(order => {
    sheet.appendRow([
      new Date(order.createdDate),
      order.code,
      order.customerName,
      order.totalPayment,
      order.status
    ]);
  });
}
// Trigger: Every hour

4.2 Import Tự Động Từ Google Forms

Khi nhân viên điền form chấm công, đặt hàng, hay báo cáo hàng ngày — dữ liệu tự vào sheet Raw Data và dashboard cập nhật ngay lập tức. Không cần làm gì thêm.

5. Tự Động Gửi Báo Cáo Định Kỳ

function guiBaoCaoTuDong() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const config = ss.getSheetByName('Config');

  // Đọc danh sách email từ sheet Config
  const emails = config.getRange('B2:B10').getValues()
    .flat().filter(e => e !== '');

  // Lấy KPI chính từ Dashboard
  const dashboard = ss.getSheetByName('Dashboard');
  const doanhThu = dashboard.getRange('C3').getValue();
  const donHang = dashboard.getRange('C4').getValue();
  const tangTruong = dashboard.getRange('C5').getValue();

  // Tạo nội dung email HTML
  const body = `
    

Báo cáo doanh thu ${new Date().toLocaleDateString('vi-VN')}

Doanh thu:${doanhThu.toLocaleString('vi-VN')} đ
Số đơn:${donHang}
Tăng trưởng:${tangTruong.toFixed(1)}%

Xem dashboard đầy đủ

`; // Xuất PDF và đính kèm const pdfBlob = exportSheetAsPDF(ss, 'Dashboard'); emails.forEach(email => { GmailApp.sendEmail(email, 'Báo cáo ngày ' + new Date().toLocaleDateString('vi-VN'), '', { htmlBody: body, attachments: [pdfBlob] }); }); } // Trigger: Daily 7:30 AM

6. KPI Nên Theo Dõi Theo Từng Bộ Phận

💰 Kinh Doanh / Doanh Thu

  • • Doanh thu ngày / tuần / tháng
  • • Số đơn hàng mới
  • • Giá trị đơn trung bình (AOV)
  • • Tỷ lệ chuyển đổi lead → đơn
  • • Top sản phẩm bán chạy

📦 Kho Hàng / Vận Hành

  • • Tồn kho hiện tại vs mức tối thiểu
  • • Số ngày hàng tồn (DSI)
  • • Tỷ lệ giao hàng đúng hạn
  • • Chi phí vận chuyển/đơn
  • • Tỷ lệ trả hàng / hoàn tiền

👥 Khách Hàng

  • • Số khách hàng mới / cũ
  • • Customer Retention Rate
  • • Net Promoter Score (NPS)
  • • Thời gian phản hồi trung bình
  • • Số ticket hỗ trợ mở

💵 Tài Chính

  • • Doanh thu vs Chi phí vs Lợi nhuận
  • • Công nợ phải thu / phải trả
  • • Cash flow dự báo 30 ngày
  • • Chi phí theo danh mục
  • • ROI theo kênh marketing

Template Dashboard Báo Cáo Sẵn Có

Không muốn xây từ đầu? Template Google Sheets của SheetStore có dashboard báo cáo đầy đủ với automation gửi email định kỳ tích hợp sẵn.

Xem Template Dashboard →

7. FAQ

Google Sheets có đủ mạnh để làm dashboard không?

Đủ cho SME dưới 500 rows dữ liệu mới/ngày. Với dữ liệu lớn hơn cần xem xét Google Looker Studio hoặc Power BI.

Dashboard có cập nhật real-time không?

Gần real-time — trigger chạy mỗi 15-30 phút. Google Forms cập nhật ngay lập tức khi có dữ liệu mới.

Google Sheets hay Power BI cho dashboard?

Google Sheets: miễn phí, dễ dùng, tốt cho SME nhỏ trong hệ sinh thái Google. Power BI: phù hợp khi cần visualization nâng cao và nhiều nguồn dữ liệu phức tạp.

Chia sẻ bài viết:

Tuân Hoang

Tuân Hoang

Đội ngũ SheetStore

Bạn thấy bài viết hữu ích?

Đăng ký nhận thông báo khi có bài viết mới.

Nhận thông báo khi có bài viết mới. Không spam, hứa luôn! 😊

Bình luận (0)

Vui lòng đăng nhập để tham gia thảo luận