lets(
/변수 설정 1 : 이 달 1일의 요일을 계산해주는 수식입니다./
이달첫요일, toNumber(first(map(sort(관계형 속성),day(current.날짜)))),
/*변수 설정 2 : */
빈칸갯수, if(이달첫요일 == 7, 0, 이달첫요일-1),
/변수 설정 3/
빈칸변환, ifs(빈칸 == 0, "", 빈칸갯수 == 1, 빈칸+" ", 빈칸갯수 == 2, 빈칸+" "+빈칸+" ", 빈칸갯수 == 3, 빈칸+" "+빈칸+" "+빈칸+" ", 빈칸갯수 == 4, 빈칸+" "+빈칸+" "+빈칸+" "+빈칸+" ", 빈칸갯수 == 5, 빈칸+" "+빈칸+" "+빈칸+" "+빈칸+" "+빈칸+" ", 빈칸갯수 == 6, 빈칸+" "+빈칸+" "+빈칸+" "+빈칸+" "+빈칸+" "+빈칸+" "),
/변수 설정 4 : 색상 변경을 원하는 경우 아래 함수에서 gray, pink, pink_background 에 다른 색상을 입력하세요./
날짜, map(관계형 속성,
let( a, if(current.달성==false, style(padStart(date(current.날짜),2,0),"c","gray"), style(padStart(date(current.날짜),2,0),"c","pink","b","pink_background")), if(filter(관계형 속성,current.날짜==today()),style(a,"u"),a) ) ),
/표현식 : 1주를 1줄로 계산하여 월-일 챌린지 달력을 만들어주는 수식입니다./
요일+"\n" + 빈칸변환+ slice(날짜, 0, 7 - 빈칸갯수).join(" ") + "\n" + slice(날짜, 7 - 빈칸갯수, 14 - 빈칸갯수).join(" ") + "\n" + slice(날짜, 14 - 빈칸갯수, 21 - 빈칸갯수).join(" ") + "\n" + slice(날짜, 21 - 빈칸갯수, 28 - 빈칸갯수).join(" ") + "\n" + slice(날짜, 28 - 빈칸갯수, 35 - 빈칸갯수).join(" ")
)