当前位置:首页 > 实用技巧 >

怎么在vb中添加日期(vb日期函数详解)

来源:原点资讯(www.yd166.com)时间:2023-06-17 05:23:08作者:YD166手机阅读>>

怎么在vb中添加日期,vb日期函数详解(1)

VB/VBA/VBS内置函数系列

前言

在《》中,从分类和具体名称上,给大家介绍了VB/VBA/VBS内置的函数集。前篇《》介绍了日期减法函数DateDiff的语法,参数说明,功能及应用场景。既然有时间减法函数,那自然也有时间加法函数,这就是本篇要讲的DateAdd函数

笔者为何要先从时间函数开始讲这一些列函数呢?因为时间重要啊!想想卫星、空间站、火星探测器上天进行宇航活动,没有可靠的时间行么?相隔千万里,唯有时间可以成为同步的参考。尽管使用VB/VBA/VBS时,一般不需要原子钟那样的精度,甚至很多人对时间的概念都一知半解,但如果我们试着了解时间,就会发现:哇,原来时间也可以这么奇妙。

1、电子文档防伪,一个很有意思也很有商业价值的领域。知道有哪些实现方式么?VB/VBA/VBS能否实现一个高性价比的版本?

2、商业价值必须依附于时间来进行计量,投资回收期,投资回报率,销售利率等,无不是暗含时间因素。商业活动的开展,无不是在预与立中博弈,大如国家财政预算,小如企业收支预算。中外企业之间如何比较业绩(比如南亚国家)?外资企业如何与其外国*沟通经营成果?中资企业在国外的投资经营又该如何评价?这些都离不开时间。

3、随着互联网的发展,这颗蓝色星球早已是地球村。抛开经贸金融往来,大家社交娱乐时,如何实现同步的呢?疫情期间,各国元首的视频会晤,又是如何保持有序的呢?

4、为何各大终端,如PC,关闭电源到下次开启时,时间却并未停止?像Windows这样的通用操作系统,也叫分时多任务操作系统,它又是如何协调大家一边听歌,一边写/看文档的呢?VB/VBA/VBS需不需要计时器呢?

上述问题,虽然大部分实现技术与本文无关,但时间仍是贯彻始终的线索,只不过时间太过基础,以至于很多人理所当然。比如,不少想卖钱的软件,得考虑试用期,订阅期。笔者曾亲眼见过财经行业软件(某友)的早期版本,竟然将终端时间作为控制依据,想必很多写VB/VBA/VBS都这么干过。只能说,大家若对时间稍微都有点认知,这肯定是一场误会啊!

所以,本篇在介绍DateAdd函数的同时,一并将其他相关时间函数,及相关概念做一个简要介绍。在后期的专题应用中,再结合具体例子,详细地来高端高端!

一、常见的日期函数

VB提供了一系列处理日期(时间)相关的内置函数,如年(Year)月(Month)日(Day)时(Hour)分(Minute)秒(Second)周(Week)当前时间(Now),当然还有CDate\Date\Time\Timer\Weekday等函数。这些函数,几乎包含了处理日期时间的通用需求,也是大家经常使用的函数。但还有一些不常用的日期函数,笔者简要介绍如下

1、时间分解函数

主要包括Date和Time函数,这两函数都是依据系统当前时间,前者获得日期部分,后者获得时间部分。习惯上,我们将时间分为日期和时间两部分,如“2021-11-22 17:07:25“。看过《》的朋友(可点击查阅),应该就知道,Date类型实际为Double类型,而日期部分就是Double的整数部分,而时间就是Double的小数部分。

而看过《》的朋友(可点击查阅),应该就知道,在计算机中浮点类型也是整数,也就是说Double类型的Date,其实是个8字节整数。而VB/VBA/VBS是弱类型语言,这就意味着用户可以借助指针,将同一个内存中的数据,在整数、日期、双精度浮点数之间任意低成本转换,而Date和Time函数又可任取整数和小数部分参与代数计算。

这在很多巧妙的算法设计中,不仅堪用,而且性能也不低。这对于VB/VBA/VBS而言,是写出高质量代码的『硬菜』。笔者就曾在一款VB外壳中,利用该原理,将时间线和数据线,完美融合到了一起,让破壳者,不仅要处理数据,更要处理时间,可大幅拖延破壳的进度。

2、时间合成函数

主要包括DateSerial和TimeSerial,前者根据年月日合成1个Date类型的日期部分,后者根据时分秒合成1个Date类型的时间部分。在VB/VBA/VBS中暗含类型的自动转换,很多时候直接用字符串表示日期和时间,对于很多需要时间的函数而言,都是可以接受的。所以,这两函数在很多人看来没啥用处,与其分开写年月日,还不如直接用连字符串一起方便。

但在特定应用场景,尤其是在财经金融证券领域,这俩兄弟结合指针可将时间的灵活性发挥得超出很多人的想象。

3、时间属性提取函数

Date类型,不仅是Double,也不仅是内存中的8字节整数,那还有很多属性。常见的,年月日时分秒已是见怪不怪,也有对应的专项函数,想必诸多表格表姐们在Excel中用的熟了。那季、周、已过天数等属性,用的人就少了,毕竟大部分人除了自个兜儿的外,其实并不真正Care钱嘛!更何况不少人自个的兜儿,都还缝在管家婆身上的呢。

所以,金钱密集型行业的从业人员(如财经金融证券),才有更多机会使用到这些属性。比如国外不少地方,都是发日薪或周薪。国内企业管理上来之后,月报、季报、半年报,实时报、动态预算、各种考核等,都是有的。这时候,时间属性函数,就有妙用了。

二、DateAdd函数

1、函数功能

该函数为时间加法函数,可以在指定时间上加上指定单位的时间,如年月日时分秒,季,周等。

2、函数的定义(VB形式)

DateAdd(Interval As String,Number As Double,Date As Variant) As Variant

3、函数参数说明

Interval为Number参数的时间单位,具体为下图所示:

怎么在vb中添加日期,vb日期函数详解(2)

时间间隔单位

Number为要增加的时间量,单位由Interval指定。该参数为何为Double类型?

Date为指定的基准时间,不仅支持Date类型和Double类型表示的时间,也支持字符串表示的时间(如"1899-12-30 0:00:00")。

4、应用

该函数通常与DateDiff函数组合使用,可在时间轴上前进或后退,在时间轴一类的应用中非常方便。当然,也可以单独使用,如怎样获得系统的开机时间?如何获得指定年月的最后1天的日期?如何获得指定年第N天的日期?

三、时间的几个概念

相信大部分人就认得终端右下角或其他角落显示的时间,其实除了这个,还有磁盘文件的创建/访问/修改时间和系统时间

大家都知道,地球是个球,还自个儿旋,所以有了白天和黑夜,更有了白天不懂夜的黑。因为这边是白天上班时间,那边却是午夜的鼾声四起,所以最近的中美*视频会晤的时间就很微妙。局是老拜登攒的,时间正好是我们早上上班时间,要知道美丽国那边的人,大部分人都洗洗睡了。所以,这个此时间非彼时间,谁在将就谁,就由你们说去吧。

正因为这样,才有了时区的概念,才有跨国倒时差的说法。随着近代天文地理的发展,跨区往来的日益频繁,亟需1个全球全局的时间计量,这便是UTC(协调世界时,又称世界统一时间、世界标准时间)。

但是,大家都不分场合地使用这个全球标准时间,就会导致传统时间概念的错乱。比如我们可以说我们在早上九十点视频会晤了老拜登,但美丽国人就不能这么说,否则就是睁眼瞎说。所以,为了配合各地实际生产生活,就有了本地时间,甚至还有夏令时。也就是说,实际应用中,时间各是各的,有北京时间,也有东京时间,更有伦敦时间。

大家各位屏幕上显示的时间,基本就是指本地时间(也即北京时间)。但是,这么多本地时间,如何切换到全球时间呢?所以,就有了格林尼治时间,其作为起点,按时区进行时差。这样本地时间和UTC之间进行随意切换了。

使用本地时间,在一定时区范围内比较方便,但超出太多时区就容易导致混乱。比如,东北天亮得早,也黑的早,以前有东北同学说他们哪儿下午3点过就放学,4点吃晚饭都算晚的了,当时对于笔者这个南方人还感觉挺不可思议的。

所以,在很多场合,尤其是计算机领域,真正的时间都是使用UTC时间。比如磁盘里的文件时间,网站上的时间等。

欢迎关注BtOfficer(收藏、点赞、关注 转发),更多精彩仍在继续哦(专栏文章将更系统,更全面,但需要阁下支持哦),有严肃的技术,也有轻松的唠嗑,期待你的加入!

栏目热文

如何在vb中编写日期代码

如何在vb中编写日期代码

VB小程序,关注我有更多的有趣的VB小程序实现功能:在文本框Text1中输入当天对应的星期,文本框Text2中输入天数,...

2023-06-17 05:44:20查看全文 >>

生吃核桃的八大好处(天天吃生核桃有什么好处)

生吃核桃的八大好处(天天吃生核桃有什么好处)

核桃与长寿有一定的关系。因为核桃里面含有相当多能够对抗衰老和氧自由基的营养素,常吃有益人体健康。虽然核桃约含有60%的脂...

2023-06-17 05:45:44查看全文 >>

核桃适应什么人群吃(核桃不适合什么人群吃)

核桃适应什么人群吃(核桃不适合什么人群吃)

核桃,作为一种营养丰富的坚果,在世界各地都被广泛食用。它除了味道美味之外,还富含多种营养成分和氨基酸,对身体健康有很多好...

2023-06-17 05:12:07查看全文 >>

核桃什么人群需要多吃(核桃乳适合什么人群吃)

核桃什么人群需要多吃(核桃乳适合什么人群吃)

核桃是生活中常见的一种坚果,因为在坚果中价格比较便宜,人们也会经常食用。另外,经常食用核桃的人,对核桃都有一种看法,说核...

2023-06-17 05:22:13查看全文 >>

核桃有哪些人群不能吃(哪些病不能吃核桃)

核桃有哪些人群不能吃(哪些病不能吃核桃)

我想核桃大家都不陌生吧,都认为它是比较有营养的,尤其是一些学生的家长,通常用它来给孩子们补脑。它的外形就像大脑一样,所以...

2023-06-17 05:17:06查看全文 >>

如何修改vb文件时间(vb文件保存了怎么修改)

如何修改vb文件时间(vb文件保存了怎么修改)

如何修改文件的修改时间?电脑上的每个文件都有它的“修改时间”,什么是文件的修改时间呢?它记录了这个文件最后一次被修改后...

2023-06-17 05:55:07查看全文 >>

vb日期变量怎么用(vb日期型常量怎么表示)

vb日期变量怎么用(vb日期型常量怎么表示)

2022年世界杯倒计时提示板,2021年高考倒计时提示板,想要的后面有教程,也可以私信留邮箱免费发。 今天学习了...

2023-06-17 05:16:33查看全文 >>

vb日期函数怎么用(vb日期怎么加减时间)

vb日期函数怎么用(vb日期怎么加减时间)

VB格式输出函数可以使数值、日期或字符串按指定的格式输出。其格式为:Format(<表达式>[, <格...

2023-06-17 05:36:37查看全文 >>

vb中如何设置时间(vb中如何显示系统时间代码)

vb中如何设置时间(vb中如何显示系统时间代码)

今天学习了刘金玉老师零基础VB教程的第80期,学习的主要内容是音乐闹钟开发。1.定制个性化音乐闹钟,主要使用到...

2023-06-17 05:47:44查看全文 >>

vb程序怎么设置日期(在vb中怎么把数据变成日期)

vb程序怎么设置日期(在vb中怎么把数据变成日期)

No.1VBA编程中,获取日期是一个简单的功能,同样对日期进行增减计算处理也是个容易的操作。本节我们来了解一下关于计算机...

2023-06-17 05:55:46查看全文 >>

文档排行