Dạo này mình hay phải làm báo cáo theo nhiều kỳ khác nhau, mà dữ liệu gốc thì lại chỉ có ngày tháng thôi. Làm thủ công từng bước tính toán cho từng quý, từng năm mệt quá. Hôm nay mình chia sẻ với mọi người một cách khá hay để tự động hóa việc này trong Power BI, không cần DAX phức tạp đâu nhé.
Ý tưởng là thế này:
- Mình sẽ tạo một bảng Calendar (lịch) riêng. Bảng này chứa tất cả các ngày từ ngày đầu tiên đến ngày cuối cùng của dữ liệu của mình.
- Trong bảng Calendar này, mình sẽ thêm các cột để xác định Năm, Quý, Tháng, Ngày trong tuần,...
- Sau đó, mình sẽ tạo một mối quan hệ (Relationship) giữa cột ngày của bảng Calendar này với cột ngày trong bảng dữ liệu chính của mình.
Các bước thực hiện:
- Vào Power Query Editor, chọn New Source -> Blank Query.
- Đặt tên cho query này là 'Calendar'.
- Trong thanh công thức (Formula Bar), dán đoạn code M sau (nhớ thay đổi StartDate và EndDate cho phù hợp với dữ liệu của bạn):
let
StartDate = #date(2020, 1, 1), // Ngày bắt đầu
EndDate = #date(2023, 12, 31), // Ngày kết thúc
NumberOfDays = Duration.Days(EndDate - StartDate) + 1,
Dates = List.Dates(StartDate, NumberOfDays, #duration(1, 0, 0, 0)),
#