option explicit
private type weekinyear
firstday as date
lastday as date
end type
private function getdatebyweek(byval intweekinyear as integer) as weekinyear
dim intdaycount as integer '一年中有多少天
dim intweekcount as integer '一年中有多少个星期
dim lngday as long
if intweekinyear < 1 then exit function
intdaycount = 365
if (year(date) mod 4) = 0 then intdaycount = intdaycount + 1 '如果是闰年,则多加一天
intweekcount = intdaycount \ 7
if (intdaycount mod 7) <> 0 then intweekcount = intweekcount + 1
if intweekinyear > intweekcount then exit function
lngday = clng(cdate(year(date) & "-1-1"))
getdatebyweek.firstday = lngday + (intweekinyear - 1) * 7
getdatebyweek.lastday = lngday + (intweekinyear * 7 - 1)
end function
private sub form_load()
debug.print getdatebyweek(1).firstday, getdatebyweek(1).lastday
end sub