Вы можете использовать декартовой (умножающий) запрос.
Сначала получите крошечный запрос, который возвращает 10 записей. Сохраните его как Десять :
SELECT DISTINCT
Abs([id] Mod 10) AS N
FROM
MSysObjects;
Затем используйте это, чтобы сгенерировать даты года:
PARAMETERS
[Year] Short;
SELECT
DateSerial(IIf([Year] Between 100 And 9999,[Year],Year(Date())),1,1+[Ten_0].[N]+[Ten_1].[N]*10+[Ten_2].[N]*100) AS [Date]
FROM
Ten AS Ten_0,
Ten AS Ten_1,
Ten AS Ten_2
WHERE
((([Ten_0].[N]+[Ten_1].[N]*10+[Ten_2].[N]*100)<=DateDiff("d",DateSerial(IIf([Year] Between 100 And 9999,[Year],Year(Date())),1,1),DateSerial(IIf([Year] Between 100 And 9999,[Year],Year(Date())),12,31))))
ORDER BY
DateSerial(IIf([Year] Between 100 And 9999,[Year],Year(Date())),1,1+[Ten_0].[N]+[Ten_1].[N]*10+[Ten_2].[N]*100);