Menu

App script quản lý rủi ro cho cá nhân & doanh nghiệp với báo cáo chuẩn định dạng biểu đồ

Chia sẻ cách sử dụng DAX để tính tăng trưởng doanh thu so với kỳ trước trong Power BI

Hà Tôn Hoài 02/04/2026 19:42 556 lượt xem 3 trả lời

Chào các bạn, mình là thành viên mới của diễn đàn và cũng đang tập tành làm quen với Power BI. Dạo gần đây mình có làm một báo cáo về doanh thu và gặp một chút vướng mắc trong việc tính toán tăng trưởng so với kỳ trước (ví dụ: tăng trưởng so với tháng trước, quý trước, năm trước).

Sau một hồi mày mò và tham khảo một vài nguồn, mình đã tìm ra cách khá hiệu quả để làm việc này bằng ngôn ngữ DAX. Mình muốn chia sẻ lại cho anh em nào đang gặp khó khăn tương tự.

Giả sử chúng ta có một bảng dữ liệu bán hàng bao gồm các cột: Date (Ngày bán), Sales (Doanh thu).

Đầu tiên, chúng ta cần tạo một bảng Date độc lập và đánh dấu các mối quan hệ với bảng dữ liệu chính. Sau đó, để tính doanh thu của kỳ trước, chúng ta có thể sử dụng hàm CALCULATE kết hợp với SAMEPERIODLASTYEAR (cho tăng trưởng năm trước) hoặc tự tạo logic cho tháng/quý trước.

Ví dụ, để tính doanh thu của tháng trước, ta có thể viết như sau:

DoanhThuThangTruoc = 
CALCULATE(SUM(SalesData[Sales]), 
    DATEADD('Date'[Date], -1, MONTH)
)

Sau khi có được doanh thu kỳ trước, việc tính toán tỷ lệ tăng trưởng sẽ đơn giản hơn:

TangTruongDoanhThu = 
DIVIDE( 
    SUM(SalesData[Sales]) - [DoanhThuThangTruoc], 
    [DoanhThuThangTruoc]
)

Đừng quên định dạng cột TangTruongDoanhThu dưới dạng phần trăm nhé.

Cách này giúp mình tạo ra các biểu đồ và bảng biểu rất trực quan để theo dõi xu hướng tăng trưởng. Hy vọng chia sẻ này hữu ích cho mọi người. Nếu có cách nào khác hay hơn, mọi người cùng thảo luận nhé!

1

Tuyệt vời, cảm ơn bạn đã chia sẻ cách tính tăng trưởng doanh thu bằng DAX! Mình cũng đang tìm hiểu về mảng này và bài viết của bạn rất hữu ích.

Đặc biệt là phần sử dụng CALCULATEDATEADD để so sánh với kỳ trước, mình thấy rất trực quan. Mình cũng hay dùng SAMEPERIODLASTYEAR để so sánh với cùng kỳ năm trước, nhưng với các kỳ linh hoạt hơn như tháng/quý trước thì cách của bạn rất hay.

Bạn có thể chia sẻ thêm một ví dụ cụ thể hơn về cách xử lý trường hợp dữ liệu bị "nhảy cóc" về thời gian (ví dụ: thiếu dữ liệu của một tháng nào đó) khi sử dụng các hàm DAX này không? Mình nghĩ đây cũng là một vấn đề nhiều người gặp phải.

0

Cảm ơn bạn đã chia sẻ cách tính tăng trưởng doanh thu bằng DAX nhé! Rất chi tiết và dễ hiểu cho những ai mới bắt đầu với Power BI.

Mình cũng có một cách tương tự, thường dùng hàm CALCULATE kết hợp với SAMEPERIODLASTYEAR để tính tăng trưởng so với cùng kỳ năm trước. Cách này cũng khá gọn và hiệu quả.

Bạn có thể cho mình hỏi thêm là với dữ liệu có nhiều cấp độ thời gian (ngày, tuần, tháng, quý, năm), mình nên cấu trúc bảng thời gian (Date Table) như thế nào cho tối ưu khi làm việc với các hàm DAX như thế này không?

4

Hay quá bạn ơi! Cách tính tăng trưởng doanh thu so với kỳ trước bằng DAX này rất hữu ích cho nhiều báo cáo. Mình cũng thường xuyên dùng Measure này để phân tích xu hướng.

Bạn có thể chia sẻ thêm về trường hợp tính tăng trưởng theo các kỳ khác nhau (ví dụ: so với 3 tháng trước, hay 6 tháng trước) không? Mình nghĩ sẽ có nhiều anh em quan tâm đấy!

3

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký