当前位置:首页 > 资源分享 > 正文内容

VB日期函数精解示例

光的传人10年前 (2014-02-10)资源分享1282

上一篇文章中,使用到了vb日期函数中的timer,但是对vb没有深入学习的我来说,虽然知其大意,但是语法不懂,还得靠度娘才能改改代码,才能顺利使用。终于研究了一阵子,发现了点眉目,可以按照自己的想法修改上篇文章中出现的代码了!

例如修改:

objRS.Source=objRS.Source & "ORDER BY right(cstr(rnd(-int(rnd(-timer())*100+[log_ID])))*1000*Now(),2)"

修改成每分钟刷新才随机变换一次,如下:

objRS.Source=objRS.Source & "ORDER BY right(cstr(rnd(-int(rnd(-Minute(Now))*100+[log_ID])))*1000*Minute(Now),2)"

同理,利用下面的日期函数,可以修改成你想要的效果!

特此转载“VB日期函数精解示例”,仅供留底,全文如下:

日期函数的语法简表

CDate
CDate(date)
返回date类型的表达式,date 参数是任意有效的日期或字符串表达式。
MyDate = "October 19, 1962" MyShortDate = CDate(MyDate)

Date
Date
返回当前系统日期。不带()
MyDate = Date

DateAdd
DateAdd(interval, number, date) 
返回已添加指定时间间隔的日期。
下例将95 年1 月31 日加上一 个月:
NewDate =DateAdd("m", 1, "31-Jan-95")

DateDiff
DateDiff(interval,date1, date2)  
返回两个日期之间的时间间隔。
xx= DateDiff("d", Now, theDate)

DatePart
DatePart(interval, date)
返回给定日期的指定部分。参考interval参数的可选值。
GetQuarter =
DatePart("q", TheDate)

DateSerial
DateSerial(year, month, day) 
对于指定的年、月、日,返回 Date 子类型的 Variant。
MyDate2 =
   DateSerial(1990-10, 8-2, 1)

DateValue
DateValue(date)
返回 Date 子类型的变量。date 参数应是字符串。
DateValue("September 11, 1963")

Day
Day(date)
返回1 到 31 之间的一个整数,代表某月中的一天。
MyDay = Day("October 19, 1962") 'MyDay =19。

Hour
Hour(Time)
返回0到23之间的一个整数,代表某小时数。Time参数是时间表达式。
MyTime = Now
MyHour = Hour(MyTime)

IsDate
IsDate(expression)
返回Boolean值指明某表达式是否可以转换为日期。expression 参数可以是任意可被识别为日期和时间的日期表达式或字符串表达式。
MyDate = "October 19, 1962" YourDate = #10/19/62#
NoDate = "Hello"
MyCheck= IsDate(MyDate) 'True MyCheck= IsDate(YourDate)'True MyCheck= IsDate(NoDate)   'False

Minute
Minute(Time)
返回0到59之间的整数,代表分钟。
MyVar = Minute(Now)   '=41

Month
Month(date)
返回 1到12 之间的一个整数,代表某月份数。
MyVar=Minute("October 19, 1962")
'MyVar = 10

MonthName
MonthName(month)
返回表明指定月份的字符串。month是数值
thismanth = MonthName(10)'
’thismanth = "October"

Now
Now
返回系统的当前日期和时间值。
Today = Now
' today = "02-07-04 11:41:14"

Second
Second(Time) 
返回 0到 59之间的一个整数,代表某秒数。
MySec = Second(Now)
'MySec =14

Time
Time
返回当前的系统时间。
MyTime = Time
'MyTime = "11:41:14"

Timer
Timer
返回午夜 12 时以后已经过去的秒数。
  

TimeSerial
TimeSerial(h,m,s)
返回含有指定时h、分m、秒s的时间。
MyTime1 = TimeSerial(12-6,-15,0)
' 返回 "5:45:00 AM."

TimeValue
TimeValue(time)
返回包含时间的 Date子类型的变量。
time 参数通常是代表时间表达式。
MyTime = TimeValue("4:35:17 PM")

Weekday
Weekday(date)
返回代表一星期中某天的整数0到6。
MyDate = #October 19, 1962#
MyWeekDay = Weekday(MyDate)

WeekdayName
WeekdayName(weekday)
返回指定某天是星期几的字符串。
MyDate= WeekDayName(1)'Sunday

Year
Year(date)
返回一个代表某年的整数。
MyYear = Year(now)   '2002

FormatDateTime
FormatDateTime(Date[, NamedFormat])
返回表达式,此表达式已被格式化为日期或时间。NamedFormat=0,1,2,3,4
GetCurrentDate =
    FormatDateTime(Date, 1)

上表的语法格式中没有括号的表示无参数,date和time分别表示日期类型和时间类型的参数。
·       给出日期常量的方法有几种。用字符串"1994-3-21","94,03,20","March,21,1994"都可以,当然是在可以接收字符串的函数处使用。必须用日期型的地方可以用“#”号括起来,如#94-3-21#。 
·       月名和星期名在中文版Window98中返回的是“五月”或“星期四”这样的名称,而不是英文名。它取决于系统设定的日期格式。 
下表给出interval参数的可选值,它适用于dateadd, Datediff, DatePart三个函数。
设置 描述 
yyyy 年 
q 季 
m 月 
y 一年的日数 
d 日 
w 一周的日数 
ww 周 
h 时 
n 分钟 
s 秒 

常数                 值          描述 
vbUseSystem       0       使用 NLS API 设置。 
vbSunday          1       星期日(缺省值) 
vbMonday          2       星期一 
vbTuesday          3       星期二 
vbWednesday       4       星期三 
vbThursday           5       星期四 
vbFriday          6       星期五 
vbSaturday           7       星期六 
---------------------------------------------------------------------------- 
weekdayname 取得星期几的函数:例如:weekdayname(weekday(date)) 输出:星期五
monthname 取得汉字几月份的函数: 例如:monthname(month(date))输出:十一月
----------------------------------------------------------------------------
datediff("d",#2005/11/12#,#2005/12/12#) 计算两个日期之间相隔的天数 30
可以使用 DateDiff 来计算两个日期之间相隔几日,或计算从今天起到年底还有多少个星期。 
----------------------------------------------------------------------------
DateAdd("d", -7, #9/15/1999#)   计算1999年9月15日七天前的日期 
DateAdd("d", +7, #9/15/1999#)   计算1999年9月15日七天后的日期
可以用 DateAdd 来计算距今天为三十天的日期;或者计算距现在为 45 分钟的时间。
----------------------------------------------------------------------------
Print Datepart("y",#1/27/2009#)    返回27,表示#1/27/2009#是一年的第27天
----------------------------------------------------------------------------
print FormatDateTime(Date,vbShortTime) 返回一个日期和时间的显示格式。
常数 值 描述 
vbGeneralDate 0 显示日期和/或时间。如果有日期部分,则用短日期格式显示。如果有时间部分,则用
长时间格式显示。如果都有,两部分都显示。 
print FormatDateTime(now,vbGeneralDate)
2009-1-28 0:07:03
----------------------------------------------------------------------------
vbLongDate 1 用计算机区域设置值中指定的长日期格式显示日期。
print FormatDateTime(now,vbLongDate)
2009年1月28日 
----------------------------------------------------------------------------
vbShortDate 2 用计算机区域设置值中指定的短日期格式显示日期。 
print FormatDateTime(now,vbShortDate)
2009-1-28
----------------------------------------------------------------------------
vbLongTime 3 用计算机区域设置值中指定的时间格式显示时间。
print FormatDateTime(now,vbLongTime)
0:08:56 
----------------------------------------------------------------------------
vbShortTime 4 用24小时格式(hh:mm)显示时间。 
print FormatDateTime(now,vbShortTime)
00:09
----------------------------------------------------------------------------
把字符串转换成日期型:
1:日期型变量=datevalue("2005/10/28")       2:日期型变量=timevalue("15:20:20")
把数字转换成日期型:
1:日期型变量=dateserial(年,月,日)           2:日期型变量=timeserial(时,分,秒)
从现在开始到五分钟之后的精确日期和时间:        print now+timeserial(0,5,0)
日期型变量=format(now,"dddd,yyyy/mm/dd, hh:mm:ss AM/PM)
THUESDAY,2005/11/29 10:30:45 AM
---------------------------------------------------------------------------- 
●DateValue 将字串转换成日期
Dim Tmp As Date
Tmp = DateVal("1999/5/1")→Tmp = 05/01/99
Tmp = DateVal("99/5/1")→Tmp = 05/01/99
Tmp = DateVal("99/05/01")→Tmp = 05/01/99
Tmp = DateVal("05/01/99")→Tmp = 05/01/99
Tmp = DateVal("05-01-99")→Tmp = 05/01/99
Tmp = DateVal("05-01-1999")→Tmp = 05/01/99
Tmp = DateVal("May/01/99")→Tmp = 05/01/99
---------------------------------------------------------------------------- 
●DateSerial 将字数值换成日期
Dim Tmp As Date
Tmp = DateSeral(99,5,1)→Tmp = 05/01/99
Tmp = DateSeral(1999,5,1)→Tmp = 05/01/99
---------------------------------------------------------------------------- 
●TimeValue 将字串转换成时间
Dim Tmp As Date
Tmp = TimeVal("1:1:5")→Tmp = 01:01:05 AM
Tmp = TimeVal("01:01:05")→Tmp = 01:01:05 AM
Tmp = TimeVal("13:01:05")→Tmp = 01:01:05 PM
Tmp = TimeVal("1:1:5 PM")→Tmp = 01:01:05 PM
Tmp = TimeVal("PM 1:1:5")→Tmp = 01:01:05 PM
Tmp = TimeVal("1:1:5 下午")→Tmp = 01:01:05 PM
Tmp = TimeVal("下午 1:1:5")→Tmp = 01:01:05 PM
---------------------------------------------------------------------------- 
●TimeSerial 将字数值换成日期
Dim Tmp As Date
Tmp = TimeSeral(1,1,5)→Tmp = 01:01:05 AM
Tmp = TimeSeral(13,1,5)→Tmp = 01:01:05 PM

扫描二维码推送至手机访问。

版权声明:本文由光的传人博客www.liu16.com发布,如需转载请注明出处。

本文链接:http://www.liu16.com/post/日期函数.html

标签: 精彩转载
分享给朋友:

相关文章

微信营销方案——免费分享

微信营销方案——免费分享

微信品牌营销六大途径及实施步骤导读:微信公众平台的出现,让大家越来越关注微信这一移动互联网平台,被公认是将来营销的蓝海。但毕竟微信毕竟不同于微博,有一定的私密性,在微信上怎么进行品牌营销呢?本文细数了微信品牌营销的六大途径及实施步骤,并结合...

百度云-分享赢红包,千万奖金等你拿

百度云-分享赢红包,千万奖金等你拿

新出的活动,纯搬运,喜欢的可以参加。规则说明【活动时间】2014年12月17日--12月23日【红包活动规则】1登录百度云帐号,完成活动要求的任意1个任务,均可获得领取红包机会1次;2共计4个任务,每个任务仅限完成一次,每个人最多可获得4次...

VIP看电影——爱奇艺最新vip账号神器什么的可以扔了,各大视频网站VIP免费看!

VIP看电影——爱奇艺最新vip账号神器什么的可以扔了,各大视频网站VIP免费看!

好久没给大家分享chrome谷歌浏览器插件了,今天给大家分享一款可以免费看各大视频网站VIP视频的插件——VIP看电影。这款插件的功能让人很是享受:视频网站开始前的60秒广告可以不用忍受了,免费看VIP视频(已测试,爱奇艺VIP视频可以免费...

5-10元话费免费领,百分百中奖,10分钟内到帐(已测试3.1前有效)

5-10元话费免费领,百分百中奖,10分钟内到帐(已测试3.1前有效)

在某论坛看到的活动,本博主亲自测试,真实有效,特此分享。以下是领话费活动详细说明(虽然操作过程有点麻烦,但是免费话费还是真心不错的):1、话费真实到账,10分钟内到账。3月1日前有效!2、参加活动领话费必须用微信打开链接才能看到“抢十元话费...

liu16主题风格模板下载(综合Metro主题样式与卢松松色彩风格)

liu16主题风格模板下载(综合Metro主题样式与卢松松色彩风格)

自从z-blog升级到2.0以后,松哥的模板就出现了比较多的不兼容问题,一直喜欢松哥的模板:低调与华丽,想自己修改修改吧,不是自己制作的模板很多东西需要慢慢了解、熟悉才能修改,修改起来非常慢。松哥的模板还是非常不错的,但是要改成兼容Z-Bl...

周星驰2017电影《西游伏妖篇》百度云迅雷下载

周星驰2017电影《西游伏妖篇》百度云迅雷下载

好久没有更新博客了,今天就分享一个比较新的的电影吧——周星驰的《西游伏妖篇》。《西游伏妖篇》是由浙江横店影业有限公司,中国电影股份有限公司出品的古装魔幻喜剧片,由周星驰监制,徐克执导,吴亦凡、林更新、姚晨、林允、张美娥等主演。作为《西游降魔...

评论列表

垂直绿化
10年前 (2014-02-15)

我也一直在用。、

魏五锁业
魏五锁业
10年前 (2014-02-15)

谢谢博主分享

色系军团
10年前 (2014-02-13)

为什么要这样做?

色系军团
10年前 (2014-02-13)

期待加油更新,喜欢你的文章。

鹏达锁业
鹏达锁业
10年前 (2014-02-13)

期待新的文章。。。。

鹏达锁业
鹏达锁业
10年前 (2014-02-12)

过来看看,给力支持博主,欢迎回访

鹏达锁业
鹏达锁业
10年前 (2014-02-11)

期待博主更新文章。。。加油

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。