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.

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.

| Hạng mục cần chuẩn bị | Lấy ở đâu | Ghi 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 Forms | Mỗi dòng là một giao dịch, dòng 1 là tiêu đề |
| Danh sách chỉ số cần xem | Hỏi người sẽ đọc báo cáo | Chỉ chọn 3–5 chỉ số quan trọng nhất |
| Bản phác bố cục | Giấy và bút | Vẽ ô chỉ số, biểu đồ, bộ lọc nằm ở đâu |
| Màu thương hiệu | Mã màu HEX từ bộ nhận diện | Mộ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ẵn | Có 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:
- Data: chỉ chứa dữ liệu thô, không tô màu, không trộn ô, không kẻ bảng.
- 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.
- 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án | B: Cửa hàng | C: Mã SP | D: Số lượng | E: Doanh thu | F: Nhân viên |
|---|---|---|---|---|---|
| 02/09/2026 | Cửa hàng A | SP01 | 3 | 450000 | Lan |
| 02/09/2026 | Cửa hàng B | SP02 | 1 | 320000 | Minh |
| 03/09/2026 | Cửa hàng C | SP01 | 2 | 300000 | Hoa |
| 05/09/2026 | Cửa hàng A | SP03 | 4 | 880000 | Lan |
| 01/10/2026 | Cửa hàng B | SP01 | 5 | 750000 | Minh |
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.

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.

Thao tác thực hiện:
- 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).
- Vào Chèn (Insert) > Bảng tổng hợp (Pivot table).
- Ở 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".
- 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.

| Mục đích phân tích | Loại biểu đồ nên chọn | Trường hợp áp dụng cụ thể |
|---|---|---|
| Xu hướng theo thời gian | Biểu đồ đường (Line chart) | Doanh thu tăng hay giảm qua các tháng |
| So sánh giữa các nhóm | Biể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ần | Biể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êu | Biểu đồ đồng hồ (Gauge) hoặc ô chỉ số (Scorecard) | Tỷ lệ hoàn thành chỉ tiêu tháng |
| Quan hệ hai biến | Biể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.

- 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.
- 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.
- 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).

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)

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:
- 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.
- 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).
- Ẩ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.
- 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.
- 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.

| Phương pháp | Phù 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 đổi | Cập nhật bằng tay, dễ chép nhầm dòng |
| Hàm IMPORTRANGE | Nối vài file Google Sheets với nhau, dữ liệu vừa phải | Dữ 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 Script | Dữ 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, API | Kéo số từ CRM, nền tảng quảng cáo về trang tính | Phụ 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.

| Chỉ số đo lường | Ý nghĩa thực tế | Ngưỡng nên xem lại |
|---|---|---|
| Thời gian tải | Từ 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ần | Dưới 40% |
| Số lần phải sửa tay | Số lần bạn phải vào gỡ lỗi #N/A, #REF! mỗi tháng | Trên 2 lần/tháng |
| Độ trễ dữ liệu | Chênh lệch giữa thực tế và số trên báo cáo | Trê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.

- 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ú ý.
- Đứ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.
- 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.
- 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)).
- 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.
- 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.
- 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ậ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.