自定义函数需要获取上个月的第一天和最后一天,
参数为空时,默认为当月的上个月第一天和最后一天,
参数不空时,为指定某日期的上个月第一天和最后一天。
转载请著名出处。
day:=20170101
MsgBox % "上个月的月初是" firstDay()"`n"
. "上个月的月末是" lastDay() "`n"
. day . "的上个月的月初是"firstDay(day) "`n"
. day . "的上个月的月末是" . lastDay(day) "`n`n"
return
firstDay(day="") ;返回上个月的月初,上上个月的月末+1
{
str:=get上个月(day) . "01"
return str
}
lastDay(day="") ;返回上个月的月末,用这个月的月初-1
{
str:=get这个月(day) . "01"
str:=DayCalc(str,-1)
return str
}
get这个月(day="")
{
if (day="")
str:=A_YYYY . A_MM
else
str:=SubStr(day,1,6)
return str
}
get上个月(day="")
{
str:=get这个月(day) . "01"
str:=DayCalc(str,-1)
str:=SubStr(str,1,6)
return str
}
DayCalc(d1="",count=0)
{
if (d1="")
d1:=A_Now
T := d1
T -= 1970,s
T += 86400*count
S := 1970
S += T,s
S:=SubStr(S,1,8)
return S
}