OROVA.VN — BIZ AI AGENT
Hướng dẫn

Cách làm dashboard trong Google Sheet qua 6 bước, kèm công thức mẫu

Cách làm dashboard trong Google Sheet qua 6 bước, kèm công thức mẫu

Cách làm dashboard trong google sheet gói gọn trong 6 bước: (1) gom dữ liệu thô về một tab Data và làm sạch, (2) tổng hợp bằng Pivot Table hoặc hàm SUMIFS, (3) chọn đúng loại biểu đồ và chèn biểu đồ, (4) lắp tab Dashboard với các ô chỉ số lớn, (5) thêm bộ lọc bằng Slicer hoặc ô thả xuống kết hợp hàm QUERY, (6) khoá công thức rồi chia sẻ quyền xem. Làm theo một bộ dữ liệu mẫu có sẵn bên dưới, bạn có thể dựng xong bản đầu tiên trong một buổi chiều.

Phần lớn người mới bị kẹt ở chỗ nhồi mọi thứ vào một trang tính duy nhất: dữ liệu thô, công thức và biểu đồ nằm lẫn với nhau. File nặng dần, cứ có dòng dữ liệu mới là công thức lệch và báo lỗi #REF!.

Bài này đi theo một ví dụ xuyên suốt: dashboard doanh thu cho một chuỗi 3 cửa hàng bán lẻ. Mọi công thức đều dùng cùng một bảng dữ liệu mẫu, cùng tên cột, để bạn chép vào file của mình và chạy được ngay.

Cách làm dashboard trong Google Sheet: Hiểu đúng bản chất trước khi bắt đầu

Dashboard trong Google Sheet không phải nơi nhập liệu. Nó là lớp hiển thị nằm trên cùng, lấy số từ tab dữ liệu thô bên dưới rồi biến thành biểu đồ, con số tổng và bộ lọc. Nếu bạn cần ôn lại khái niệm và cách chọn chỉ số, xem bài dashboard marketing là gì; ở đây mình chỉ tập trung vào thao tác trên Google Sheets.

Bảng so sánh sự khác biệt giữa bảng tính thông thường và bảng điều khiển dữ liệu dashboard
Tách biệt rõ ràng hai khái niệm này giúp bạn duy trì một file báo cáo nhẹ và chuyên nghiệp.

Cách làm này hợp với nhân viên văn phòng, quản lý cấp trung và chủ doanh nghiệp nhỏ muốn có báo cáo tự cập nhật mà không phải mua phần mềm BI. Một tệp Google Sheets có giới hạn 10 triệu ô; dữ liệu càng gần giới hạn đó và càng nhiều công thức mảng thì file càng chậm. Khi dữ liệu đến từ nhiều hệ thống và phải ghép chéo phức tạp, nên cân nhắc công cụ chuyên trực quan hoá như Looker Studio.

Chuẩn bị gì trước khi xây dựng bảng điều khiển dữ liệu?

Lao vào chèn biểu đồ khi dữ liệu chưa sẵn sàng là lý do hay gặp nhất khiến dashboard phải làm lại. Trước khi thiết kế, hãy gom đủ những thứ sau.

Quy trình 3 bước nền tảng cần chuẩn bị trước khi thiết kế dashboard
Việc phác thảo bố cục ra giấy trước khi thao tác trên máy giúp tiết kiệm rất nhiều giờ làm lại.
Hạng mục cần chuẩn bịLấy ở đâuGhi chú
Dữ liệu thôXuất từ phần mềm bán hàng, kế toán, hoặc trang tính nhận câu trả lời của Google FormsMỗi dòng là một giao dịch, dòng 1 là tiêu đề
Danh sách chỉ số cần xemHỏi người sẽ đọc báo cáoChỉ chọn 3–5 chỉ số quan trọng nhất
Bản phác bố cụcGiấy và bútVẽ ô chỉ số, biểu đồ, bộ lọc nằm ở đâu
Màu thương hiệuMã màu HEX từ bộ nhận diệnMột màu chính, một màu trung tính, một màu cảnh báo
Tài khoản GoogleĐăng nhập sẵnCó quyền xem file nguồn nếu dùng IMPORTRANGE

Cách chọn chỉ số nào đáng đưa lên dashboard đã có trong bài KPI marketing là gì. Điều quan trọng nhất ở giai đoạn này là tách không gian. Một file báo cáo gọn gàng cần ít nhất 3 tab:

  1. Data: chỉ chứa dữ liệu thô, không tô màu, không trộn ô, không kẻ bảng.
  2. Pivot_Engine: nơi đặt bảng tổng hợp và công thức tính toán, người xem không cần nhìn thấy.
  3. Dashboard: nơi duy nhất người xem nhìn vào, chỉ có ô chỉ số, biểu đồ và bộ lọc.

Bộ dữ liệu mẫu dùng xuyên suốt bài. Tab Data có 6 cột từ A đến F, dòng 1 là tiêu đề:

A: Ngày bánB: Cửa hàngC: Mã SPD: Số lượngE: Doanh thuF: Nhân viên
02/09/2026Cửa hàng ASP013450000Lan
02/09/2026Cửa hàng BSP021320000Minh
03/09/2026Cửa hàng CSP012300000Hoa
05/09/2026Cửa hàng ASP034880000Lan
01/10/2026Cửa hàng BSP015750000Minh

Hai cột phụ G (Tháng) và H (Mã SP chuẩn) sẽ được thêm bằng công thức ở bước 1. Tab phụ BangGia có cột A là Mã SP, cột B là Đơn giá.

Lưu ý về dấu phân cách. Mọi công thức trong bài viết theo cài đặt khu vực Hoa Kỳ: dấu phẩy , ngăn các đối số. Nếu tệp của bạn đặt khu vực Việt Nam (Tệp > Cài đặt > Ngôn ngữ và khu vực), Google Sheets dùng dấu chấm phẩy ; để ngăn đối số, và trong mảng { } thì dấu \ thay cho dấu phẩy để ngăn cột. Tên hàm giữ nguyên tiếng Anh ở mọi cài đặt.

Biến dữ liệu đa kênh thành quyết định tức thời. OROVA Insight kết nối mượt mà API từ Online đến Offline, giúp bạn theo dõi toàn cảnh doanh nghiệp qua hệ thống báo cáo biểu đồ Real-time.

OROVA Insight: Tích hợp dữ liệu Online - Offline, trực quan hóa báo cáo Real-time.

Quy trình 6 bước thực chiến: Case study quản lý doanh thu bán hàng

Bạn là quản lý vận hành của 3 cửa hàng. Mỗi ngày nhân viên nhập ngày bán, mã sản phẩm, số lượng và doanh thu vào một file chung. Việc của bạn là biến dòng dữ liệu đó thành một màn hình nhìn vào là biết cửa hàng nào đang dẫn đầu, sản phẩm nào bán chậm.

Bước 1: Thu thập và chuẩn hóa dữ liệu đầu vào (Raw Data)

Dữ liệu thô hiếm khi sạch. Bước đầu tiên là kéo về một chỗ và đưa về cùng một định dạng.

Tóm tắt các nguyên tắc vàng khi xử lý và làm sạch dữ liệu thô trong Google Sheets
Vi phạm các nguyên tắc này sẽ khiến hệ thống biểu đồ phía sau sụp đổ khi có dữ liệu mới.

Kéo dữ liệu tự động. Thay vì sao chép tay, đặt công thức này ở ô A1 của tab Data để lấy dữ liệu từ file nhân viên nhập:

=IMPORTRANGE("https://docs.google.com/spreadsheets/d/ID_FILE_GOC", "Nhap_lieu!A1:F")

Lần đầu, ô sẽ báo #REF! kèm nút Cho phép truy cập (Allow access). Bấm vào đó là dữ liệu chảy về. Dải A1:F không có số dòng cuối nên dòng mới thêm vào file gốc cũng được kéo theo.

Thêm cột Tháng bằng ARRAYFORMULA. Đặt ở ô G1 của tab Data:

=ARRAYFORMULA(IF(ROW(A:A)=1, "Tháng", IF(A:A="", "", TEXT(A:A, "yyyy-mm"))))

Một công thức duy nhất ở dòng tiêu đề tự phủ xuống mọi dòng, kể cả dòng mới về. Cột A phải là ngày thật (không phải chữ) thì hàm TEXT mới trả về dạng 2026-09.

Làm sạch mã sản phẩm. Nhân viên hay gõ thừa dấu cách hoặc chữ thường ("sp01 "). Đặt ở ô H1:

=ARRAYFORMULA(IF(ROW(C:C)=1, "Mã SP chuẩn", IF(C:C="", "", UPPER(TRIM(C:C)))))

TRIM cắt khoảng trắng thừa, UPPER đổi thành chữ in hoa, nên "sp01 " và "SP01" trở thành một mã.

Tra đơn giá, ẩn lỗi khi chưa có dữ liệu. Khi cần lấy đơn giá từ tab BangGia, dùng một trong hai cách:

=IFERROR(VLOOKUP(H2, BangGia!A:B, 2, FALSE), "")
=XLOOKUP(H2, BangGia!A:A, BangGia!B:B, "")

Đối số cuối của XLOOKUP là giá trị trả về khi không tìm thấy, nên không cần bọc IFERROR.

Dấu hiệu làm đúng: cột ngày lọc được theo tháng, cột G hiện đúng 2026-09, 2026-10; không ô nào báo lỗi; một mã sản phẩm chỉ còn một cách viết.

Lỗi hay gặp: ngày kiểu Mỹ (MM/DD/YYYY) lẫn với kiểu Việt Nam (DD/MM/YYYY), khiến cột G sai tháng hoặc trống. Kiểm tra khu vực của tệp ở Tệp > Cài đặt, rồi chọn cả cột A, vào Định dạng (Format) > Số (Number) > Ngày và giờ tùy chỉnh (Custom date and time) để đưa về một chuẩn. Ngoài ra, đừng bao giờ trộn ô trong tab Data: trộn ô làm bộ lọc, Pivot Table và QUERY đọc sai.

Ví dụ minh hoạ:

  • Bối cảnh: một chuỗi 3 cửa hàng gom số bán hằng ngày qua Google Forms.
  • Các bước đã làm: trưởng nhóm dùng IMPORTRANGE kéo trang tính nhận câu trả lời về file tổng, rồi VLOOKUP theo mã sản phẩm để lấy đơn giá.
  • Chỗ vấp và cách gỡ: mã nhập kèm dấu cách ở cuối ("SP01 ") làm VLOOKUP báo #N/A và báo cáo tách một mã thành hai dòng. Cách gỡ là tra theo cột H đã qua UPPER(TRIM()) thay vì cột C gốc.
  • Kết quả: bảng tổng hợp liền mạch, mỗi mã một dòng, biểu đồ tự cập nhật khi có câu trả lời mới.

Bước 2: Xây dựng bảng tổng hợp Pivot Table làm trạm trung chuyển

Vẽ biểu đồ thẳng từ hàng nghìn dòng thô làm file chậm và khó đổi góc nhìn. Pivot Table (bảng tổng hợp) gom dữ liệu thành bảng tóm tắt chỉ bằng thao tác chọn, không cần viết công thức.

Quy trình 4 bước dựng Pivot Table doanh thu theo tháng và cửa hàng trong Google Sheets
Để dải nguồn là Data!A1:H thì dòng mới thêm vào vẫn được tính.

Thao tác thực hiện:

  1. Chọn dải dữ liệu Data!A1:H (bấm vào một ô trong bảng rồi Ctrl+A cũng được, sau đó sửa dải ở bước 3).
  2. Vào Chèn (Insert) > Bảng tổng hợp (Pivot table).
  3. Ở hộp thoại, kiểm tra ô dải dữ liệu là Data!A1:H, chọn Trang tính mới (New sheet), bấm Tạo. Đổi tên tab mới thành "Pivot_Engine".
  4. Trong khung chỉnh sửa bên phải:
    • Hàng (Rows): thêm "Tháng" (cột G).
    • Cột (Columns): thêm "Cửa hàng" (cột B).
    • Giá trị (Values): thêm "Doanh thu" (cột E), tóm tắt theo SUM.

Dấu hiệu làm đúng: bảng có mỗi dòng là một tháng, mỗi cột là một cửa hàng, ô giao nhau là tổng doanh thu. Thêm một dòng vào tab Data thì con số trong Pivot đổi theo.

Lỗi hay gặp: dữ liệu mới không vào Pivot. Nguyên nhân là dải nguồn bị chốt cứng số dòng, ví dụ Data!A1:H100; dòng 101 trở đi bị bỏ qua. Cách gỡ: bấm vào Pivot, sửa dải nguồn thành Data!A1:H (bỏ số dòng cuối).

Cách thay thế bằng công thức. Nếu muốn tự sắp bảng, dùng SUMIFS và COUNTIFS. Ví dụ ở tab Pivot_Engine, ô A20 ghi 2026-09, ô B19 ghi Cửa hàng A, thì ô B20:

=SUMIFS(Data!E:E, Data!G:G, A20, Data!B:B, B19)

Và số đơn của cửa hàng đó trong tháng:

=COUNTIFS(Data!G:G, A20, Data!B:B, B19)

Thay A20 và B19 bằng ô chứa tháng và tên cửa hàng tương ứng, bạn sẽ có cả bảng doanh thu theo tháng và cửa hàng mà không cần Pivot Table.

Bước 3: Lựa chọn biểu đồ phù hợp với mục tiêu phân tích

Mỗi loại biểu đồ trả lời một kiểu câu hỏi. Chọn sai thì người xem phải tự đoán thông điệp. Bảng dưới đây giúp bạn chọn nhanh; muốn hiểu sâu hơn nguyên tắc, xem bài trực quan hoá dữ liệu.

Khung quyết định giúp lựa chọn loại biểu đồ phù hợp với mục tiêu phân tích dữ liệu
Biểu đồ tròn chỉ hiệu quả khi có dưới 5 hạng mục và tổng các thành phần bằng 100%.
Mục đích phân tíchLoại biểu đồ nên chọnTrường hợp áp dụng cụ thể
Xu hướng theo thời gianBiểu đồ đường (Line chart)Doanh thu tăng hay giảm qua các tháng
So sánh giữa các nhómBiểu đồ cột (Column) hoặc thanh ngang (Bar)Xếp hạng doanh thu 3 cửa hàng; thanh ngang hợp khi tên mục dài
Tỷ trọng thành phầnBiểu đồ tròn hoặc vành khuyên (Pie/Donut)Tỷ trọng doanh thu giữa 3 cửa hàng; chỉ dùng khi dưới 5 hạng mục
Theo dõi mục tiêuBiểu đồ đồng hồ (Gauge) hoặc ô chỉ số (Scorecard)Tỷ lệ hoàn thành chỉ tiêu tháng
Quan hệ hai biếnBiểu đồ phân tán (Scatter)Chi phí quảng cáo so với số đơn

Thao tác thực hiện: ở tab Pivot_Engine, chọn vùng bảng tổng hợp. Vào Chèn (Insert) > Biểu đồ (Chart). Trong khung Trình chỉnh sửa biểu đồ (Chart editor), tab Thiết lập (Setup), mục Loại biểu đồ (Chart type), chọn loại theo bảng trên. Sang tab Tùy chỉnh (Customize) để đổi màu, tiêu đề, nhãn trục. Xong, bấm vào biểu đồ, cắt (Ctrl+X) rồi dán (Ctrl+V) sang tab Dashboard.

Biểu đồ nhỏ trong một ô với SPARKLINE. Muốn có một đường xu hướng mini ngay cạnh con số, dùng:

=SPARKLINE(Pivot_Engine!B3:B14, {"charttype","line";"linewidth",2;"color","blue"})

Thay B3:B14 bằng vùng doanh thu theo tháng của một cửa hàng trong bảng tổng hợp của bạn. Với khu vực Việt Nam, mảng tuỳ chọn viết là {"charttype"\"line";"linewidth"\2;"color"\"blue"} và các đối số ngăn bằng ;.

Bước 4: Lắp ráp giao diện dashboard và áp dụng 3 nguyên tắc UI/UX

Đường lưới xám của bảng tính làm dashboard trông như một bảng nhập liệu. Hãy để tab Dashboard trông như một màn hình báo cáo, với người xem đọc từ trên xuống.

Hướng dẫn hệ màu Material Design của Google, tham khảo khi chọn màu chính, màu trung tính và màu cảnh báo.
Hướng dẫn hệ màu Material Design của Google, tham khảo khi chọn màu chính, màu trung tính và màu cảnh báo.
  1. Tắt đường lưới: vào Xem (View) > Hiển thị (Show), bỏ dấu tích Đường lưới (Gridlines). Nền trở thành trang trắng, biểu đồ nổi lên.
  2. Tối đa 3 màu chủ đạo: một màu chính (ví dụ xanh dương cho doanh thu), một màu trung tính (xám cho nền và viền), một màu cảnh báo (đỏ hoặc cam cho chỉ số giảm). Nhiều màu hơn làm mắt người xem không biết nhìn vào đâu.
  3. Xếp theo tầng từ trên xuống:
    • Tầng 1: tiêu đề báo cáo và các ô chỉ số lớn (scorecard) như tổng doanh thu, số đơn.
    • Tầng 2: biểu đồ đường xu hướng trải rộng, vì trục thời gian cần nhiều chỗ ngang.
    • Tầng 3: 2–3 khối nhỏ: biểu đồ tỷ trọng, bảng xếp hạng sản phẩm.

Công thức cho các ô chỉ số ở tầng 1 (đặt trên tab Dashboard, tăng cỡ chữ lên 24–36 cho dễ đọc):

=SUM(Data!E2:E)
=COUNTA(Data!A2:A)
=SUMIFS(Data!E2:E, Data!G2:G, "2026-09")

Ba ô lần lượt là tổng doanh thu, tổng số đơn và doanh thu tháng 9/2026. Ngoài cách gõ công thức, bạn cũng có thể chèn biểu đồ loại Thẻ thống kê (Scorecard chart) trong trình chỉnh sửa biểu đồ.

Tô màu cảnh báo bằng định dạng có điều kiện. Chọn ô hoặc vùng cần theo dõi, vào Định dạng (Format) > Định dạng có điều kiện (Conditional formatting). Ở mục Quy tắc định dạng, chọn Nhỏ hơn (Less than) và nhập ngưỡng, hoặc chọn Công thức tùy chỉnh là (Custom formula is) để viết điều kiện riêng, rồi chọn màu nền cảnh báo. Ví dụ ở bước 5 bên dưới dùng cách này cho bảng sản phẩm.

Bước 5: Thiết lập bộ lọc động (Slicer) và hàm Query

Người xem sẽ muốn chọn "Cửa hàng A" và thấy số liệu chỉ của cửa hàng đó. Có hai cách: Slicer (dễ, bấm chọn) hoặc ô thả xuống kết hợp hàm QUERY (linh hoạt hơn).

Bảng so sánh chi tiết điểm mạnh và yếu giữa bộ lọc Slicer và hàm QUERY
Slicer chỉ lọc biểu đồ và bảng tổng hợp nằm cùng trang tính, dùng chung dải dữ liệu với nó.

Cách 1: Slicer

  • Bấm vào một biểu đồ hoặc bảng tổng hợp cần lọc.
  • Vào Dữ liệu (Data) > Thêm slicer (Add a slicer).
  • Ở khung bên phải, kiểm tra dải dữ liệu, rồi chọn cột cần lọc là "Cửa hàng".
  • Kéo hộp slicer lên đầu trang.

Slicer chỉ lọc các biểu đồ và bảng tổng hợp nằm cùng trang tính và dùng chung dải dữ liệu với nó. Vì vậy, nếu muốn bấm lọc ngay trên tab Dashboard, hãy đặt bảng tổng hợp cần lọc trên chính tab Dashboard (có thể để ở vùng cột phía bên phải) và vẽ biểu đồ từ bảng đó.

Cách 2: Ô thả xuống + QUERY

Tạo ô chọn cửa hàng: bấm ô H1 trên tab Dashboard, vào Dữ liệu (Data) > Xác thực dữ liệu (Data validation) > Thêm quy tắc (Add rule). Ở Tiêu chí (Criteria), chọn Menu thả xuống (từ một dải ô) (Dropdown from a range) và nhập =Data!B2:B. Bấm Xong. Ô H1 giờ là menu chọn tên cửa hàng.

Đặt công thức sau ở ô A20 của tab Dashboard:

=QUERY(Data!A1:H, "SELECT H, SUM(D), SUM(E) WHERE B = '"&H1&"' GROUP BY H ORDER BY SUM(E) DESC LABEL SUM(D) 'Số lượng', SUM(E) 'Doanh thu'", 1)
Tài liệu ngôn ngữ truy vấn Google Visualization API Query Language làm nền tảng cho hàm Query.
Tài liệu ngôn ngữ truy vấn Google Visualization API Query Language làm nền tảng cho hàm Query.

Giải thích từng phần:

  • Data!A1:H: vùng dữ liệu, số 1 ở cuối báo dòng đầu là tiêu đề.
  • SELECT H, SUM(D), SUM(E): lấy mã sản phẩm chuẩn, tổng số lượng, tổng doanh thu.
  • WHERE B = '"&H1&"': chỉ lấy dòng có cột Cửa hàng khớp với lựa chọn ở H1.
  • GROUP BY H: gom theo mã sản phẩm, giống Pivot Table.
  • ORDER BY SUM(E) DESC: xếp doanh thu từ cao xuống thấp.
  • LABEL: đặt tên cột kết quả.

Nếu chỉ cần lọc dòng mà không cần cộng gộp, FILTER ngắn hơn:

=FILTER(Data!A2:F, Data!B2:B=H1)

Để tô đỏ các sản phẩm doanh thu thấp trong bảng QUERY: chọn vùng C21:C, mở Định dạng có điều kiện, chọn Công thức tùy chỉnh là và nhập =AND(C21<>"", C21<1000000), chọn màu nền đỏ nhạt.

Dấu hiệu làm đúng: đổi tên cửa hàng ở H1 thì bảng từ ô A20 đổi theo; dòng tiêu đề vẫn là "Số lượng", "Doanh thu".

Lỗi hay gặp: gõ sai thứ tự dấu nháy ở đoạn '"&H1&"', khiến công thức báo lỗi phân tích cú pháp hoặc QUERY báo #VALUE!. Thứ tự đúng là: nháy đơn, nháy kép, dấu &, ô H1, dấu &, nháy kép, nháy đơn. Nếu H1 đang trống, QUERY chỉ trả về dòng tiêu đề; đó không phải lỗi.

Bước 6: Kiểm tra toàn vẹn và phân quyền chia sẻ

Dashboard đẹp mấy cũng hỏng nếu ai đó gõ đè vào ô công thức. Trước khi gửi file, hãy đi hết danh sách kiểm sau.

Checklist 5 bước trước khi gửi file:

  1. Thử thêm dữ liệu: thêm vài dòng mới vào file gốc, mở lại dashboard xem các ô chỉ số, Pivot và biểu đồ có cập nhật không.
  2. Khoá công thức: vào Dữ liệu (Data) > Bảo vệ trang tính và dải ô (Protect sheets and ranges), thêm dải ô chứa công thức hoặc cả tab Pivot_Engine, đặt quyền chỉnh sửa là Chỉ bạn (Only you).
  3. Ẩn tab phụ: bấm chuột phải vào tab Data và Pivot_Engine ở thanh dưới, chọn Ẩn trang tính (Hide sheet). Ẩn chỉ để gọn mắt, không phải cách bảo mật: ai có quyền xem file vẫn có thể xem lại tab ẩn.
  4. Xem trên điện thoại: mở file bằng ứng dụng Google Sheets. Biểu đồ bị ép dẹp hoặc chữ quá nhỏ thì quay lại tăng cỡ chữ tiêu đề và xếp biểu đồ thành một cột.
  5. Chia sẻ đúng quyền: bấm Chia sẻ (Share), cấp quyền Người xem (Viewer) cho người chỉ cần đọc báo cáo. Mở thử bằng một tài khoản quyền xem để chắc bộ lọc vẫn bấm được và không sửa được công thức.

Phân tích sâu: So sánh các phương pháp kéo dữ liệu tự động

Bài toán đau đầu nhất là đưa dữ liệu vào Google Sheets mà không phải tải file về rồi sao chép mỗi ngày. Có 4 cách phổ biến, mỗi cách một đánh đổi.

Hướng dẫn lập trình Google Apps Script để tương tác và tự động hoá trang tính cấp cao.
Hướng dẫn lập trình Google Apps Script để tương tác và tự động hoá trang tính cấp cao.
Phương phápPhù hợp khi nàoĐiểm yếu
Dán tĩnh (sao chép, nhập CSV)Báo cáo một lần, dữ liệu không đổiCập nhật bằng tay, dễ chép nhầm dòng
Hàm IMPORTRANGENối vài file Google Sheets với nhau, dữ liệu vừa phảiDữ liệu lớn hoặc nhiều tầng liên kết dễ chậm và báo lỗi #REF!
Google Apps ScriptDữ liệu lớn, muốn chép giá trị theo lịch để file nhẹCần biết lập trình JavaScript cơ bản; khó bảo trì khi người viết nghỉ
Tiện ích bổ sung, APIKéo số từ CRM, nền tảng quảng cáo về trang tínhPhụ thuộc bên thứ ba, phải kiểm soát quyền truy cập, có thể tốn phí

Khi báo cáo đã có nhiều công thức mảng, IMPORTRANGE trở thành gánh nặng vì phải tải lại qua mạng. Lúc đó, Apps Script là lựa chọn hợp lý: viết một đoạn mã nhỏ, gắn trình kích hoạt theo thời gian (time-driven trigger) chạy mỗi đêm, chép dữ liệu từ file gốc và chỉ dán giá trị vào tab Data. File dashboard nhẹ hơn vì không còn hàm kéo dữ liệu chạy liên tục.

Ví dụ minh hoạ:

  • Bối cảnh: một trưởng phòng marketing cần gom số liệu chiến dịch từ 5 tài khoản quảng cáo vào một trang tính để theo dõi ngân sách.
  • Các bước đã làm: ban đầu dùng một tiện ích bổ sung bản miễn phí, đặt lịch cập nhật mỗi sáng để vẽ biểu đồ chi phí.
  • Chỗ vấp và cách gỡ: bản miễn phí của tiện ích giới hạn lượng dữ liệu, cuối tháng số bị thiếu ngày, biểu đồ gãy khúc. Cách gỡ là dùng một đoạn Apps Script gọi API của nền tảng quảng cáo, chạy ban đêm, chỉ ghi số thô vào tab Data.
  • Kết quả: trang tính có đủ dữ liệu 30 ngày, biểu đồ chi phí mở ra là xem được ngay trong buổi họp sáng.

Không còn độ trễ trong quản trị dữ liệu. Khai phóng sức mạnh hệ thống OROVA Insight để đồng bộ luồng dữ liệu O2O (Online-to-Offline) và trực quan hóa mọi báo cáo ngay trong thời gian thực.

OROVA Insight: Tích hợp dữ liệu Online - Offline, trực quan hóa báo cáo Real-time.

Đo lường mức độ hiệu quả của một báo cáo Google Sheet

Dashboard chỉ có giá trị khi người ta mở ra dùng. Hãy theo dõi vài chỉ số sau.

Công thức tính tỷ lệ áp dụng báo cáo nội bộ để đo lường độ hiệu quả của dashboard
Ví dụ: chia sẻ cho 20 người, 12 người mở đều đặn thì tỷ lệ áp dụng là 60%.
Chỉ số đo lườngÝ nghĩa thực tếNgưỡng nên xem lại
Thời gian tảiTừ lúc mở file đến khi mọi biểu đồ hiện đủNgười xem phải chờ lâu đến mức bỏ ngang
Tỷ lệ áp dụng (Adoption rate)Phần trăm người được chia sẻ thực sự mở file hằng tuầnDưới 40%
Số lần phải sửa taySố lần bạn phải vào gỡ lỗi #N/A, #REF! mỗi thángTrên 2 lần/tháng
Độ trễ dữ liệuChênh lệch giữa thực tế và số trên báo cáoTrên 24 giờ (trừ khi đã thống nhất chốt số cuối ngày)

Tỷ lệ áp dụng tính bằng: số người mở file ít nhất 2 lần/tuần ÷ tổng số người được chia sẻ × 100%. Ví dụ: chia sẻ cho 20 người, có 12 người mở đều đặn thì tỷ lệ là 12 ÷ 20 × 100% = 60%. Với tài khoản Google Workspace, bạn xem ai đã mở file ở Công cụ (Tools) > Trang tổng quan hoạt động (Activity dashboard).

Ví dụ minh hoạ:

  • Bối cảnh: một giám đốc nhân sự dựng dashboard chuyên cần, chia sẻ quyền xem cho 20 quản lý kho.
  • Các bước đã làm: dùng ARRAYFORMULA cho 10 cột tính toán, chèn 5 biểu đồ tròn.
  • Chỗ vấp và cách gỡ: mỗi lần đổi bộ lọc, trình duyệt treo vì các công thức mảng tính lại toàn bộ dữ liệu. Cách gỡ là chuyển phần tổng hợp sang Pivot Table và bỏ bớt biểu đồ không ai xem.
  • Kết quả: đổi bộ lọc mượt hơn hẳn, các quản lý kho mở file thường xuyên hơn trước.

7 sai lầm thường gặp khi thiết kế dashboard và cách khắc phục

Một tệp Google Sheets giới hạn 10 triệu ô, nhưng file thường chậm từ rất sớm nếu đầy công thức mảng và định dạng thừa. Trước khi đi vào 7 sai lầm, hãy nhớ bốn mã lỗi bạn sẽ gặp nhiều nhất: #REF! (dải tham chiếu bị xoá hoặc bị dữ liệu khác đè lên), #N/A (hàm tra cứu không tìm thấy giá trị, thường do khoảng trắng thừa), #VALUE! (làm phép tính trên ô chứa chữ) và #NAME? (gõ sai tên hàm hoặc quên ngoặc kép cho chuỗi). Bọc IFERROR quanh công thức giúp dashboard không hiện lỗi ra ngoài, nhưng vẫn phải sửa gốc.

Danh sách tóm tắt các mã lỗi phổ biến thường gặp trong Google Sheets và nguyên nhân cốt lõi
Sử dụng hàm IFERROR bọc bên ngoài các phép tính sẽ giúp giao diện không bị xấu đi khi có lỗi.
  1. Lạm dụng màu sắc
    • Hậu quả: biểu đồ nhiều màu như rổ kẹo, người xem không biết đâu là thông điệp chính.
    • Cách sửa: dùng một màu cho dữ liệu bình thường, chỉ một màu nóng cho điểm cần chú ý.
  2. Đứt công thức khi Google Forms đổ dữ liệu mới
    • Hậu quả: Google Forms ghi câu trả lời thành dòng mới; công thức bạn kéo tay ở các cột bên cạnh không tự có ở dòng mới.
    • Cách sửa: đặt một công thức mảng ARRAYFORMULA ở dòng tiêu đề, theo đúng khuôn cột Tháng ở bước 1, thay vì kéo công thức xuống từng dòng.
  3. Trộn ô trong bảng dữ liệu thô
    • Hậu quả: không bấm lọc được, VLOOKUP và QUERY đọc sai.
    • Cách sửa: không trộn ô ở tab Data; chép tên nhóm xuống từng dòng để dữ liệu là một khối phẳng. Gom nhóm để dành cho Pivot Table.
  4. Tra cứu chéo file quá nhiều
    • Hậu quả: mỗi VLOOKUP trỏ vào một IMPORTRANGE riêng làm file tải lại dữ liệu qua mạng nhiều lần.
    • Cách sửa: kéo dữ liệu về một tab bằng một IMPORTRANGE, rồi tra cứu trong cùng file. XLOOKUP (Google Sheets đã hỗ trợ) hoặc INDEX + MATCH dễ đọc hơn VLOOKUP vì không phụ thuộc thứ tự cột, ví dụ =INDEX(BangGia!B:B, MATCH(H2, BangGia!A:A, 0)).
  5. Không sao lưu định kỳ
    • Hậu quả: Google Sheets có Lịch sử phiên bản (Version history), nhưng khi ai đó nhập đè một file CSV làm hỏng cấu trúc, khôi phục vẫn mất công.
    • Cách sửa: cuối mỗi tháng vào Tệp (File) > Tạo bản sao (Make a copy), thêm tên tháng vào tên file.
  6. Bỏ qua màn hình điện thoại
    • Hậu quả: người xem mở bằng điện thoại chỉ thấy một phần biểu đồ, phải kéo qua lại.
    • Cách sửa: nếu người xem hay dùng điện thoại, xếp biểu đồ thành một cột dọc, giới hạn chiều rộng trong vài cột.
  7. Chuỗi IMPORTRANGE nhiều tầng
    • Hậu quả: file A kéo về file B, file B kéo về file C; một mắt xích chậm là cả báo cáo hiện #REF!.
    • Cách sửa: để file báo cáo lấy thẳng từ file nguồn, chỉ một tầng liên kết.

Câu hỏi hay gặp về thiết kế báo cáo trên Google Sheet

Dữ liệu từ Google Form đổ về liên tục làm hỏng công thức các cột kế bên, xử lý thế nào?

Google Forms luôn ghi câu trả lời thành dòng mới, nên công thức kéo tay ở cột bên cạnh không theo kịp. Hãy xoá các công thức kéo tay, đặt một công thức ARRAYFORMULA kèm điều kiện IF ở dòng tiêu đề của cột cần tính. Công thức đó tự phủ xuống mọi dòng mới.

File báo cáo phình to hàng chục nghìn dòng, bấm lọc một cái là bị giật lag, phải làm sao?

Thường do ba thứ: nhiều hàng, cột trống không dùng; định dạng có điều kiện áp cho cả vùng quá rộng; và các hàm tự tính lại liên tục như TODAY(), NOW(), IMPORTRANGE. Xoá hẳn hàng, cột thừa, thu hẹp vùng định dạng có điều kiện, và chuyển phần tổng hợp nặng sang Pivot Table.

Nên dùng Pivot Table kết hợp Slicer hay dùng hàm QUERY để tạo bộ lọc?

Pivot Table + Slicer hợp với người mới: chỉ cần bấm chọn, không viết công thức, và không đụng tới dữ liệu gốc. QUERY + ô thả xuống hợp khi bạn cần bảng chi tiết sắp xếp theo ý mình, đặt tên cột riêng, hoặc kết hợp nhiều điều kiện. Tóm lại: biểu đồ tương tác nhanh thì dùng Slicer, bảng chi tiết theo lựa chọn thì dùng QUERY.

Có cần học viết mã (Google Apps Script) để làm báo cáo tự động không?

Không bắt buộc. Với dữ liệu vừa phải, các hàm SUMIFS, COUNTIFS, QUERY, IMPORTRANGE cùng Pivot Table đã đủ cho phần lớn báo cáo văn phòng. Apps Script chỉ thật sự cần khi bạn muốn chép dữ liệu theo lịch để file nhẹ, tự gửi email báo cáo, hoặc lấy dữ liệu qua API từ phần mềm không xuất file được.

Trí tuệ nhân tạo (AI) có thể giúp gì trong quá trình làm báo cáo trên trang tính?

Các trợ lý AI dạng trò chuyện viết công thức khá tốt khi bạn mô tả bằng lời, ví dụ: "Viết công thức Google Sheets lấy tổng cột E của tab Data khi cột B là Cửa hàng A và cột G là 2026-09". Luôn thử công thức AI đưa ra trên vài dòng mẫu trước khi dùng thật, và đổi dấu phân cách cho đúng khu vực của tệp.

Nên bắt đầu từ đâu?

Đừng cố làm mọi thứ cùng lúc. Chọn điểm khởi đầu hợp với vai trò của bạn, làm xong trong một buổi chiều.

Nếu bạn là nhân viên văn phòng hoặc sinh viên mới làm quen: Bắt đầu từ dữ liệu sạch. Chép bảng dữ liệu mẫu ở trên vào một file mới, thêm cột Tháng và cột Mã SP chuẩn bằng ARRAYFORMULA, rồi dựng một Pivot Table và một biểu đồ cột. Chỉ cần làm trọn vòng này một lần, các phần còn lại sẽ dễ hơn nhiều.

Nếu bạn là quản lý cấp trung cần xem báo cáo đội nhóm: Lấy file doanh thu hoặc chấm công tháng trước, dựng một Pivot Table, thêm một Slicer theo người phụ trách và ba ô chỉ số bằng SUMIFS. Khi cần gửi số liệu định kỳ cho cấp trên, có thể tham khảo khung trình bày trong bài mẫu báo cáo công việc cho sếp.

Nếu bạn là chủ doanh nghiệp không có thời gian tự làm: Hãy giao cho một người trong nhóm dựng theo đúng 6 bước trên, còn bạn chỉ cần chốt 3–5 chỉ số muốn xem mỗi sáng. Khi số liệu nằm rải ở Google Sheets, GA4 và các nền tảng quảng cáo, Orova Insight có đồng bộ Google Sheets và dashboard kéo-thả để gom chúng về một chỗ. Với quy mô nhỏ, nắm vững cách làm dashboard trong google sheet đã đủ để bạn có một màn hình báo cáo tự cập nhật.

Về tác giả

Nguyễn Đỗ Trọng Ân

Người xây dựng Orova

Nguyễn Đỗ Trọng Ân có 8 năm làm marketing, trong đó 6 năm quản lý khai thác thị trường châu Á. Anh là người xây dựng Orova, Biz AI Agent hoạt động không ngủ: tự lên kế hoạch, chạy và tối ưu công việc cho doanh nghiệp.

Vận hành doanh nghiệp với AI Agent

Orova là Biz AI Agent hoạt động không ngủ — tự lên kế hoạch, chạy và tối ưu công việc.
Tiết kiệm thời gian, bứt phá hiệu suất.

Dùng thử miễn phí