首页 > 编程知识 正文

excel零基础函数入门,excel基础入门教程函数

时间:2023-05-03 16:30:44 阅读:246325 作者:2469

目录

示例

实现代码

DateDiff函数

DateDiff函数中interval参数“w”和“WW”的区别

VBA的DateDiff函数和工作表函数DateDif的区别


示例

    如图所示,该表为某公司员工基本资料。如何使用VBA提取身份证号码中的出生日期,并计算每个员工的年龄?

姓名身份证出生日期年龄高勤艳370403198802276625  强健的冬日410923197907150093  害怕的纸飞机341203198909054437  刘建芳321281198201184389  nxdcjl341124199005296821  精明的爆米花630104198805282530  精明的汽车320723198604283819  平淡的小笼包413027198310213251  奋斗的铅笔41142519860504152X  敏感的黑裤420602197912041047  

 

实现代码 Option ExplicitSub 获取身份证出生日期() Dim RowN As Long Dim sIDNo As String For RowN = 2 To Cells(Rows.Count, "A").End(xlUp).Row sIDNo = Cells(RowN, "B").Value '提取出生年月 Cells(RowN, "C").Value = DateSerial(Mid(sIDNo, 7, 4), Mid(sIDNo, 11, 2), Mid(sIDNo, 13, 2)) '计算年龄 Cells(RowN, "D").Value = DateDiff("yyyy", Cells(RowN, "C").Value, Date) NextEnd Sub DateDiff函数

DateDiff函数可以计算两个日期之间的间隔,其语法为

DateDiff(interval,date1,date2[,firstdayofweek[,firstweekofyear])

    其中,参数Interval表示日期间隔以何种日期单位表不,可以为表中的任意常量。在DateDiff函数中,若将interval参数设置为“w”,将会计算间隔的星期数,而非天数。
    如:当date1为2013年1月1日(星期二),而date2为2013年1月7日(星期一),这两个日期在自然日历中分布在两个星期。
    参数Date1和Date2为进行计算的两个日期。一般地,应将Datel设置为值较小的日期。此时,函数返回正数,反之,函数将返回小于或等于0的数值。
    参数firstdayofweek表示以哪一天作为一周的开始,其值可以为表3-6中的任意常量。当需要求两个日期之间相差的周数,即当interval参数设置为“ww”时,该参数的设置将影响计算结果。如以下表达式中,date1和date2所表示的日期分别为星期三和星期四,由于firstdayofweek设置为vbThursday(即将星期四作为一周的开始),因而VBA认为date2是新的一个星期的开始,因而得到datel和date2相差1周。

DateDiff("WW",DateSerial(2012,11,7),DateSerial(2012,11,8),vbThursday)

                               DateDiff函数的firstdayofweek参数

    常  置

    值

    说  明

vbUseSystem

0

使用系统设置

vbSunday

 1

星期天(默认)

vbMonday

 2

星期一

vbTuesday

 3

星期二

vbWednesday

 4

星期三

vbThursday

 5

星期四

vbFriday

 6

星期五

vbSaturday

 7

星期六

参数firstweekofyear表示以何种设置为标准表示每年的一周开始,其值可以为表中的任意常量。

     DateDiff函数的firstweekofyear参数

 

    常  量

    值

    说  明

vbUseSystem

0

使用系统设置

vbFirstjan1

1

1月1日所在的周为1年的第1周(默认)

vbFirstFourDays

2

第1个有4天在1周内的日期认为第1周

vbFirstFullWeek

3

第1个有7天在1周内的日期认为第1周

DateDiff函数中interval参数“w”和“WW”的区别

    参数interval设置为“w”或“ww”,均为求date1和date2间隔的周数。使用参数“w”和参数“ww”将会有以下区别:

    当使用interval参数为“w”,其将会计算以date1作为1周的第1天,而计算date1和date2之间包含的星期的数量而忽略firstdayofweek的设置。而当interval参数设置为“ww”时,则以参数firstdayofweek的设置作为一周的开始,计算date1和date2之间的星

期数。如:date1设置为2013年1月1日(星期二),date2设置为2013年1月7日(星期一),参数firstdayofweek设置为vbSunday。当参数interval为“w”时,VBA将以星期二作为1周的第1天,由于至2013年1月7日未满1周,因而返回0。而当参数interva为“ww”

时,VBA则以星期天作为1周的开始,2013年1月7日认为是第2个星期的开始,因而认定两个日期相差1周,而返回1。

VBA的DateDiff函数和工作表函数DateDif的区别

    DateDiff和DateDif均是求两个日期间隔的函数,其主要有以下区别:

当datel和date2相差的时间间隔没有超过interval所定义的时间间隔时,DateDiff判断date1和date2是否属于不同的inteval所定义的时间间隔,若不同,则认为有差异。而DateDif函数则认为date1和date2相差为0。如:对date1和date2求年份间隔,若date1和date2分别为2012年12月31日和2013年1月1日时,由于其处在不同的年份,因而使用DateDiff函数将返回1,而由于其间隔未满1年,则DateDif返回0。两个函数计算间隔的个数和类型不同。DateDiff可以计算相差的星期数、小时数、分、秒,而DateDif无法计算。DateDif可以忽略年份和月份,计算相差的月数或天数,而DateDiff无法计算。
 

 

win7中qq截图快捷键是什么Struts2的概念是什么

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。