可以使用VB.NET中的DataTime对象的AddMonths方法:
网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了新华免费建站欢迎大家使用!
Dim d1 As Date = Now
MsgBox(d1) '显示现在的机器日期与时间
MsgBox(d1.AddMonths(2)) '显示现在的机器日期加上2个月的对应日期与时间
MsgBox(d1.AddMonths(-1)) '显示现在的机器日期减掉1个月的对应日期与时间
DataTime对象的方法很多,你可以通过在线查阅,例如:
d1.Add()
d1.AddDays()
d1.AddHours()
d1.AddMinutes()
d1.AddSeconds()
d1.AddYears()
等等!
注意:从字面意思可以理解是加,而括号里是填写对应的数值,当数值为负数,起到减的作用了。
新建一个LABEL控件
然后在FORM_LOAD 事件中输入
Label1.caption=year(now()) 'year可以换成month,day,hour,minute,second
label1.caption=label1.caption-1 '减号后面可以输入你想要的数字
就OK了
Private Function 减去整月(基准时间 As Date, 月数 As Integer) As Date
y = Year(基准时间)
m = Month(基准时间)
d = Day(基准时间)
m = m - 月数
Do While m 1
m = m + 12
y = y - 1
Loop
减去整月 = CDate(y "-" m "-" d)
End Function
Private Sub Command1_Click()
Print 减去整月(Now, 1)
End Sub
有了这个函数,想减几个月就减几个月,不怕大月、不怕小月、也不怕闰月!
补充,你的函数因该这样用:
DateAdd("m", -1, Now())