如何设置系统日期,一行VBA编程代码教你学会

No.1

VBA编程中,获取日期是一个简单的功能,同样对日期进行增减计算处理也是个容易的操作。

本节我们来了解一下关于计算机系统日期的一些操作。

DateAdd函数

如上图所示,DateAdd是一个函数名。

可以简单理解为日期相加。

也就是说根据某个日期进行增加或减少某个数值之后返回一个日期。

这样,就得到了一个新的日期值。

比如,要以当前日期为基准,退后3天,那么就是在当前日期增加3天。

代码如下:

DateAdd('d',3,Date)

DateAdd函数详细语法和参数,如下图所示:

No.2

DateAdd函数语法:

DateAdd(interval, number, date)

其中参数inerval限定了相加的类型,如以天为单位相加参数'd',月为单位相加参数为'm',可参考上图进行设置。

number是一个数值,也就是时间间隔多少值,这个参数可以为正值,也可以负值,但必须是个整数long。

当然此参数还有一些规定,如果计算的日期位于年份数 100 前,也就是说减去年份数之后的结果必须大于等于100,否则会出现错误。

如:

Dim NextDate As DateNextDate = DateAdd('yyyy', -1921, '2021-2-15')MsgBox NextDate'返回'100/2/15'

-1921就是可以减去的最多年份,如果改成小于等于-1922则报错。

也就是说不能得到小100的年份,至于是什么原因造成这个结果?恐怕只有微软知道。

No.3

Date函数

这个函数还是有一定意义的,比如设置某个年份为基准,向后推移2年。直接在这个年份之上加2就可以了。

那么还有一个特别重要的日期函数,要掌握。

那就是Date函数。

此函数没有参数,直接返回当前系统日期。

可使用如下代码:

Msgbox Date'输出当前日期

No.4

Date语句

重点:Date函数和Date语句是两个概念。

函数用于取日期,语句用于设置日期。

一个是获取Get,一个是设置Set。

理解清楚之后,就可以使用不同的Date函数和语句进行不同的代码表达。

如果,想要设置当前系统日期为2020年12月25日。

可以使用如下语句:

Date='2020-12-25'

使用方法很简单,问题在于要对概念进行正确理解。

No.5

设置系统日期

Private Sub SetDate()Dim NowDate As DateNowDate = Application.InputBox('设置日期', '输入日期', VBA.Format(Date, 'yyyy-mm-dd'))If Not IsDate(NowDate) Then Exit SubDate = NowDateEnd Sub

查看当前日期后3年的日期

Private Sub GetYear()Dim NextDate As DateNextDate = DateAdd('yyyy', 3, Date)MsgBox NextDateEnd Sub

查看当前日期3天前的日期

Private Sub GetUpDate()Dim NextDate As DateNextDate = DateAdd('d', -3, Date)MsgBox NextDateEnd Sub

日期功能函数和语句是个简单的功能,但也是一个很重要的函数,必要掌握的一个知识。

所以,特别拿来整理学习一下。

(0)

相关推荐