=ARRAY_CONSTRAIN(ARRAYFORMULA(
IF(E1="weekly",
QUERY({"week "&WEEKNUM(A2:A)&" "&YEAR(A2:A), C2:C, YEAR(A2:A)+WEEKNUM(A2:A)*0.083},
"select Col1,sum(Col2),Col3 where Col2 is not null group by Col1,Col3 order by Col3 label sum(Col2)''", 0),
IF(E1="monthly",
QUERY({TEXT(A2:A, "mmmm")&" "&YEAR(A2:A), C2:C, YEAR(A2:A)+MONTH(A2:A)*0.083},
"select Col1,sum(Col2),Col3 where Col2 is not null group by Col1,Col3 order by Col3 label sum(Col2)''", 0),
IF(E1="yearly",
QUERY({YEAR(A2:A), C2:C},
"select Col1,sum(Col2) where Col2 is not null group by Col1 label sum(Col2)''", 0), )))), 999^99, 2)
电子表格演示 https://docs.google.com/spreadsheets/d/1goEcXqAi4JdLuwnv7XHWOgRBQgN6TG4ZDHqCjTshHPc/copy