Chào các anh chị em trong diễn đàn,
Dạo này công việc của mình liên quan nhiều đến việc phân tích dữ liệu khách hàng và mình đang tìm cách tự động hóa việc phân loại họ dựa trên tổng giá trị đơn hàng trong một khoảng thời gian nhất định. Ví dụ: Khách hàng VIP (tổng đơn > 50 triệu), Khách hàng Tiềm năng (20 - 50 triệu), Khách hàng Thân thiết (5 - 20 triệu), Khách hàng Mới (< 5 triệu).
Trước đây mình thường làm thủ công bằng cách xuất báo cáo ra Excel rồi dùng PivotTable hoặc các hàm tính toán, nhưng với lượng dữ liệu lớn thì rất mất thời gian và dễ sai sót.
Gần đây mình có mày mò và phát hiện ra Power Query có thể giải quyết vấn đề này một cách khá hiệu quả. Mình muốn chia sẻ cách làm đơn giản mà mình đã áp dụng để mọi người tham khảo và có thể cùng nhau thảo luận thêm.
Các bước thực hiện cơ bản:
- Bước 1: Kết nối dữ liệu đơn hàng vào Power Query.
- Bước 2: Nhóm dữ liệu theo Mã khách hàng và tính tổng giá trị đơn hàng.
- Bước 3: Thêm một cột tùy chỉnh (Custom Column) để phân loại khách hàng dựa trên giá trị tổng đơn hàng đã tính ở Bước 2. Công thức mình dùng có dạng như sau:
if [TotalOrderValue] >= 50000000 then "VIP"
else if [TotalOrderValue] >= 20000000 then "Tiềm năng"
else if [TotalOrderValue] >= 5000000 then "Thân thiết"
else "Mới"- Bước 4: Đóng và tải kết quả vào Excel hoặc mô hình dữ liệu.
Cách này giúp mình tiết kiệm rất nhiều thời gian và đảm bảo tính nhất quán của dữ liệu phân loại. Không biết có anh chị nào có cách làm hay hơn hoặc có kinh nghiệm xử lý các trường hợp phức tạp hơn với Power Query không, chia sẻ cho mình với ạ!
Cảm ơn mọi người đã đọc bài!