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

VB日期函数精解示例

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

上一篇文章中,使用到了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

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

相关文章

shopex文章内容页面样式修改技巧

shopex文章内容页面样式修改技巧

在shopex里发布文章的时候,您是不是还在为文章内容的排版而烦心?您是不是为每段前的空格而猛敲键盘?shopex虽然在商品上做足了功夫,却没有在文章方面下功夫,每次写文章还要自己排版,非常的麻烦,非常的浪费时间!于是抽时间改了下样式代码。...

大白菜超级u盘启动制作工具绿色版(官方最新5.2版解压即用)

大白菜超级u盘启动制作工具绿色版(官方最新5.2版解压即用)

新入手一个金士顿16G的U盘,就想到了趁着还没往里存东西,赶紧制作一个启动U盘,首先想到的是“大白菜超级u盘启动制作工具”,因为从U盘启动盘刚开始兴起的时候,我就用的大白菜U盘启动工具做的启动盘。想当年,会刻录个系统光盘来重装系...

免费1G虚拟空间限时开通——景安网络

免费1G虚拟空间限时开通——景安网络

产品名称:企业Ⅰ型网页空间:1G操作系统:Windows/linux数据库空间:100M带宽:100M共享月流量:20G绑定域名个数:10个价格:0元景安虚拟主机采用领先软硬件技术,依托自建机房五线骨干网支撑,低成本高利用率,为中小微企业提...

阿里云推荐码r98eiz,9折购买阿里云产品

阿里云推荐码r98eiz,9折购买阿里云产品

阿里云最新活动:0元抢.com域名(内含阿里云ECS新手红包)、阿里云ECS链接。阿里云推荐码是什么?阿里云推荐码是阿里云举行的一个活动中类似优惠券的东西,在购买阿里云产品的时候填写别人的推荐码(例如r98eiz)就会获得9折优惠。阿里云推...

华夏名网.中国中文域名注册优惠券分享

华夏名网.中国中文域名注册优惠券分享

获得华夏名网.中国中文域名注册优惠券一枚,送给需要的朋友!活动时间:10月11日-10月31日12:00注册地址:http://www.sudu.cn/domain/==========您的优惠券信息详情如下================...

织梦dede精仿阿里百秀html5自适应文章资讯模板免费下载

织梦dede精仿阿里百秀html5自适应文章资讯模板免费下载

为庆祝本博客成立3周年,特此分享刚刚弄到的html5自适应模板。说是精仿阿里百秀,查了下阿里百秀这个网站,发现并不是一个知名的网站,今年2月份刚建立的站,可能这不是原版的作者吧。还有一篇博客文章在吐槽阿里百秀WP主题的——《阿里百秀 做垃圾...

评论列表

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

我也一直在用。、

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

谢谢博主分享

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

为什么要这样做?

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

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

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

期待新的文章。。。。

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

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

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

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

发表评论

访客

看不清,换一张

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