Hàm GROUPBY
GROUPBY là hàm mới trong Excel 365 giúp:
Gom nhóm dữ liệu
Tính tổng
Đếm
Trung bình
Max / Min
Cú pháp
GROUPBY(row_fields, values, function, [field_headers], [total_depth], [sort_order], [filter_array])
Hàm này có thể nhận bảy đối số, nhưng chỉ có ba đối số đầu tiên là bắt buộc.
Row_fields (bắt buộc) – phạm vi giá trị bạn muốn nhóm lại.
values (bắt buộc) – các giá trị cần tổng hợp.
function (bắt buộc) – hàm dùng để tóm tắt dữ liệu đã được nhóm, chẳng hạn như SUM, AVERAGE, COUNT, MIN, MAX, v.v.
Field_headers [tùy chọn] – chỉ định xem tập dữ liệu của bạn có tiêu đề hay không và liệu bạn có muốn bao gồm chúng trong kết quả hay không. Nếu bỏ qua, tiêu đề sẽ không được hiển thị.
0 – Không có tiêu đề
1 – Có, nhưng không hiển thị tiêu đề.
2 – Không có tiêu đề, nhưng sẽ tự động tạo ra chúng
3 – Có, và hiển thị tiêu đề
Total_depth [tùy chọn] – xác định xem có hiển thị tổng và tổng phụ hay không. Đối với tổng phụ, đối số row_fields phải có ít nhất 2 cột.
0 – Không có tổng số
1 (mặc định) – Tổng cộng ở cuối trang
2 – Tổng cộng và tổng phụ ở cuối trang
-1 – Tổng cộng ở đầu trang
-2 – Tổng cộng và tổng phụ ở đầu trang
Sort_order [tùy chọn] – sắp xếp theo số thứ tự cột. Các số tương ứng với các cột trong row_fields từ trái sang phải, tiếp theo là các cột trong values . Để sắp xếp tăng dần, hãy sử dụng số dương; để sắp xếp giảm dần, hãy sử dụng số âm. Để sắp xếp dựa trên nhiều row_fields , có thể cung cấp một mảng số một chiều. Mặc định là sắp xếp tăng dần.
Filter_array [tùy chọn] – lọc ra các hàng cụ thể. Có thể được cung cấp dưới dạng biểu thức logic tạo ra một mảng 1 chiều gồm các giá trị Boolean khớp với độ dài của mảng row_fields .
Ví dụ 1 — Tổng doanh thu theo ngày
Công thức:
=GROUPBY(A2:A9,D2:D9,SUM)
Kết quả:
| Ngày | Tổng doanh thu |
|---|---|
| 01/05 | 3000 |
| 02/05 | 3100 |
| 03/05 | 2300 |
Ví dụ 2 — Tổng doanh thu theo khu vực
Công thức:
=GROUPBY(B2:B9,D2:D9,SUM)
Kết quả:
| Khu vực | Tổng |
|---|---|
| Bắc | 2700 |
| Nam | 3900 |
| Trung | 1800 |
Ví dụ 3 — Đếm số hóa đơn theo khu vực
Công thức:
=GROUPBY(B2:B9,D2:D9,COUNT)
Kết quả:
| Khu vực | Số hóa đơn |
|---|---|
| Bắc | 4 |
| Nam | 3 |
| Trung | 1 |
Ví dụ 4 — Trung bình doanh thu
Công thức:
=GROUPBY(B2:B9,D2:D9,AVERAGE)
Ví dụ 5 — Doanh thu lớn nhất mỗi khu vực
=GROUPBY(B2:B9,D2:D9,MAX)
Ví dụ 6 — Nhóm nhiều cột
Gom theo ngày và khu vực
=GROUPBY(A2:B9,D2:D9,SUM)
Kết quả:
| Ngày | Khu vực | Tổng |
|---|---|---|
| 01/05 | Bắc | 1500 |
| 01/05 | Nam | 1500 |
| 02/05 | Bắc | 700 |
| 02/05 | Nam | 2400 |
| 03/05 | Bắc | 500 |
| 03/05 | Trung | 1800 |
So sánh GROUPBY vs Pivot Table
| GROUPBY | Pivot Table |
|---|---|
| Công thức động | Thao tác chuột |
| Tự cập nhật | Cần Refresh |
| Gọn nhẹ | Mạnh về báo cáo |
| Dễ kết hợp FILTER | Trực quan |
Kết hợp GROUPBY + SORT
Sắp xếp doanh thu giảm dần
=SORT(GROUPBY(B2:B9,D2:D9,SUM),2,-1)
Kết hợp GROUPBY + FILTER
Chỉ lấy khu vực doanh thu > 2000
=FILTER(
GROUPBY(B2:B9,D2:D9,SUM),
TAKE(GROUPBY(B2:B9,D2:D9,SUM),,-1)>2000
)
