How do you want to capitalize? Just the first letter or all? You didn't say so I'll suggest both:
Capitalize the first letter
DAX doesn't have a PROPER()
function like Excel
to automatically capitalize the first letter, but you can handle it yourself by taking the first uppercase character and concatenating it with the rest in lowercase.
Calendar =
ADDCOLUMNS(
FILTER(
ADDCOLUMNS(
CALENDAR(DATE(2025,1,1), DATE(2025,12,31)),
"WeekdaysNum", WEEKDAY([Date], 2)
),
[WeekdaysNum] <= 5
),
"Year", YEAR([Date]),
"Month",
UPPER(LEFT(FORMAT([Date], "MMMM"),1)) & LOWER(MID(FORMAT([Date], "MMMM"),2,LEN(FORMAT([Date], "MMMM")))),
"MonthIndex", MONTH([Date]),
"WeekdaysName",
UPPER(LEFT(FORMAT([Date], "dddd"),1)) & LOWER(MID(FORMAT([Date], "dddd"),2,LEN(FORMAT([Date], "dddd"))))
)
All caps
You can capitalize month and weekdaysName
in DAX using the UPPER()
function:
Calendar =
ADDCOLUMNS(
FILTER(
ADDCOLUMNS(
CALENDAR(DATE(2025,1,1), DATE(2025,12,31)),
"WeekdaysNum", WEEKDAY([Date], 2)
),
[WeekdaysNum] <= 5
),
"Year", YEAR([Date]),
"Month", UPPER(FORMAT([Date], "MMMM")),
"MonthIndex", MONTH([Date]),
"WeekdaysName", UPPER(FORMAT([Date], "dddd"))
)