中企动力 > 商学院 > excel日期函数
  • ?

    Excel日期变数字怎么回事

    格罗瑞娅

    展开

    工作中常常发现一个Excel表格使用了一段时间之后,再次打开它,其中的日期那列居然变成了数字,这是怎么回事呢?

    其实,那些数字就是日期在Excel中的“真身”,1900年1月1日是Excel日期的第一天,也就是说数字“1”就代表1900年1月1日;1900年1月8日就是数字“8”,同理,其他日期所对应的数字就表示这个日期是从1900年1月1日起的第几天。明白了这些之后,我们再来看看哪些原因会造成日期变数字,又怎样解决呢。

    一般设置日期格式方法:

    1. 选中单元格——右键——设置单元格格式——“日期”——选择一种日期格式——确定。

    图1-1

    2. 选中单元格——点击“开始”菜单——点击格式设置下拉框(图中位置3)——“短日期”/“长日期”。

    图1-2

    原因1:不小心按了Ctrl+~

    Ctrl+~快捷键用于显示公式。当单元格中内容是日期时,按下这个快捷键,就会显示数字。这种情况下,使用上述一般设置日期格式方法是无法成功改回日期格式的;只能再次同时按下Ctrl+~取消公式显示。

    图1-3

    原因2:不小心设置成了“文本”或“常规”格式

    原因1也许并不常见,这个原因就常见了,尤其是一个表格共享给多个人同时使用时。在表格中输入数据,Excel默认会对某些数据进行判断,然后转换。输入前,单元格格式默认为“常规”,此时输入日期,Excel会自动将其转换为“日期”格式,如果输入前是“文本”,则不会转换;如果单元格已有数据,你再把格式由数值改为常规,Excel就不会自动转换为“日期”格式。

    简言之,就是单元格格式没有设置正确,要想显示正确的日期格式,最好就是在输入前先设置为“日期”,或者输入完立即检查右键菜单,看看格式是否为“日期”。

    图1-4

    上一篇:Excel复制糟心吗?有两个办法可以保持原格式

    来源:解晴新生,点击文章开头的“解晴新生”或“关注”可以查看更多相关文章哦。方便的话,请点赞支持下,谢谢!

  • ?

    精挑细选的Excel日期函数大全(二),你值得拥有!

    闵孤风

    展开

    HOUR

    用途:返回时间值的小时数。即介于0(12:00A.M.)到23(11:00P.M.)之间的一个整数。

    语法:HOUR(serial_number)

    参数:Serial_number表示一个时间值,其中包含着要返回的小时数。它有多种输入方式:带引号的文本串(如"6:45PM")、十进制数(如0.78125表示6:45PM)或其他公式或函数的结果(如TIMEVALUE("6:45PM"))。

    实例:

    公式“=HOUR("15:30:30")”返回15,

    =HOUR(0.5)返回12即12:00:00AM,

    =HOUR(29747.7)返回16。

    MINUTE

    用途:返回时间值中的分钟,即介于0到59之间的一个整数。

    语法:MINUTE(serial_number)

    参数:Serial_number是一个时间值,其中包含着要查找的分钟数。时间有多种输入方式:带引号的文本串(如"6:45PM")、十进制数(如0.78125表示6:45PM)或其他公式或函数的结果(如TIMEVaLUE("6:45PM"))。

    公式“=MINUTE("15:30:00")”返回30,

    =MINUTE(0.06)返回26,

    =MINUTE(TIMEVALUE("21:45"))返回45。

    MONTH

    用途:返回以序列号表示的日期中的月份,它是介于1(一月)和12(十二月)之间的整数。

    语法:MONTH(serial_number)

    参数:Serial_number表示一个日期值,其中包含着要查找的月份。日期有多种输入方式:带引号的文本串(如"1998/01/30")、序列号(如表示1998年1月30日的35825)或其他公式或函数的结果(如DATEVaLUE("1998/1/30"))等。

    公式“=MONTH("2001/02/24")”返回2,

    =MONTH(35825)返回1,

    =MONTH(DATEVaLUE("2000/6/30"))返回6。

    NETWORKDAYS

    用途:返回参数start-data和end-data之间完整的工作日(不包括周末和专门指定的假期)数值。

    语法:NETWORKDAYS(start_date,end_date,holidays)

    参数:

    Start_date代表开始日期

    End_date代表终止日

    Holidays是表示不在工作日历中的一个或多个日期所构成的可选区域,法定假日以及其他非法定假日。此数据清单可以是包含日期的单元格区域,也可以是由代表日期的序列号所构成的数组常量。

    注意:该函数只有加载“分析工具库”以后方能使用。

    实例:函数中的日期有多种输入方式:带引号的文本串(如"1998/01/30")、序列号(如使用1900日期系统的35825)或其他公式或函数的结果(如DATEVALUE("1998/1/30"))。

    “=NETWORKDAYS(“2001/1/27”,"2017/9/8")”返回4335,表示从2001/1/27到2017/9/8有4335个工作日。

    NOW

    用途:返回当前日期和时间所对应的序列号。

    语法:NOW()

    参数:无

    实例:如果正在使用的是1900日期系统,而且计算机的内部时钟为2001-1-2812:53,则公式“=NOW()”返回36919.54。

    SECOND

    用途:返回时间值的秒数(为0至59之间的一个整数)。

    语法:SECOND(serial_number)

    参数:Serial_number表示一个时间值,其中包含要查找的秒数。关于时间的输入方式见上文的有关内容。

    公式“=SECOND("3:30:26PM")”返回26,

    =SECOND(0.016)返回2。

    TIME

    用途:返回某一特定时间的小数值,它返回的小数值从0到0.99999999之间,代表0:00:00到23:59:59之间的时间。

    语法:TIME(hour,minute,second)

    Hour是0到23之间的数,代表小时

    Minute是0到59之间的数,代表分

    Second是0到59之间的数,代表秒

    公式“=TIME(12,10,30)”返回序列号0.51,等价于12:10:30PM。

    =TIME(9,30,10)返回序列号0.40,等价于9:30:10AM。

    =TEXT(TIME(23,18,14),"h:mm:ssAM/PM")返回“11:18:14PM”。

    TIMEVALUE

    用途:返回用文本串表示的时间小数值。该小数值为从0到0.999999999的数值,代表从0:00:00(12:00:00AM)到23:59:59(11:59:59PM)之间的时间。

    语法:TIMEVaLUE(time_text)

    参数:Time_text是一个用Excel时间格式表示时间的文本串(如"6:45PM"和"18:45"等)。

    公式“=TIMEVALUE("3:30AM")”返回0.145833333,

    =TIMEVALUE("2001/1/26 6:35AM")返回0.274305556。

  • ?

    Excel时间日期函数全讲解,最后一个隐藏函数HR最喜欢

    蓝石头

    展开

    在工作中我们经常会碰到运用到各类时间日期的函数,今天我们就来学习一下Excel十大时间日期函数,还有一个80%的人都不知道的,HR最喜欢的一个计算时间日期的隐藏函数。

    一、显示当前日期

    函数=TODAY()=2018/10/10

    二、显示当前日期和时间

    函数=NOW()=2018/10/10 22:05

    三、显示当前日期的年份

    函数=YEAR(TODAY())=2018

    四、显示当前日期中的月份

    函数=MONTH(TODAY())=10

    五、显示当前日期中的天数

    函数=DAY(TODAY())=10

    六、显示当前日期对应的星期的第几天

    函数=WEEKDAY(TODAY(),2)=3

    七、显示日期该月最后一天的日期

    函数=EOMONTH(TODAY(),0)=2018/10/31

    八、显示当前日期经过10个工作日后对应的日期

    函数=WORKDAY(TODAY(),10)=2018/10/24

    九、显示两个日期之间的工作日

    函数=NETWORKDAYS("2018/9/10","2018/10/10")=23

    十、最强隐藏函数DATEDIF计算员工入职到现在的年份、月数、天数

    入职年数=DATEDIF(C6,D6,"Y")=3

    入职月数=DATEDIF(C6,D6,"M")=36

    入职天数=DATEDIF(C6,D6,"D")=1105

    这个函数在内置的Excel函数中不会显示,但是输入完整的函数后就会显示出我们需要的结果。所以说这是个隐藏函数。现在你学会如何使用时间日期函数了吗?

  • ?

    2017年最全的excel函数大全6—日期和时间函数(下)

    情场

    展开

    上次给大家分享了《2017年最全的excel函数大全6—日期和时间函数(上)》,这次分享给大家日期和时间函数(下)。

    NOW 函数—返回当前日期和时间的序列号

    描述

    返回当前日期和时间的序列号。 如果在输入该函数前,单元格格式为“常规”,Excel 会更改单元格格式,使其与区域设置的日期和时间格式匹配。 可以在功能区“开始”选项卡上的“数字”组中使用命令来更改日期和时间格式。

    当需要在工作表上显示当前日期和时间或者需要根据当前日期和时间计算一个值并在每次打开工作表时更新该值时,使用 NOW 函数很有用。

    注意: 如果 NOW 函数并未按预期更新单元格值,则可能需要更改控制工作簿或工作表何时重新计算的设置。 这些设置可以在 Excel 桌面应用程序的“控制面板”中更改。

    用法

    Now()

    NOW 函数用法没有参数。

    其他

    l Excel 可将日期存储为序列号,以便可以在计算中使用它们。 默认情况下,1900 年 1 月 1 日的序列号为 1,2008 年 1 月 1 日的序列号为 39,448,这是因为它距 1900 年 1 月 1 日有 39,447 天。

    l 序列号中小数点右边的数字表示时间,左边的数字表示日期。 例如,序列号 0.5 表示时间为中午 12:00。

    l NOW 函数的结果仅在计算工作表或运行含有该函数的宏时才改变。 它并不会持续更新。

    案例

    SECOND 函数—将序列号转换为秒

    描述

    返回时间值的秒数。 秒数是 0(零)到 59 范围内的整数。

    用法

    SECOND(serial_number)

    SECOND 函数用法具有下列参数:

    ü Serial_number 必需。 一个时间值,其中包含要查找的秒数。 时间值有多种输入方式:带引号的文本字符串(例如 6:45 PM)、十进制数(例如 0.78125 表示 6:45 PM)或其他公式或函数的结果(例如 TIMEVALUE(6:45 PM))。

    注解

    时间值为日期值的一部分,并用十进制数表示(例如 12:00 PM 可表示为 0.5,因为此时是一天的一半)。

    案例

    TIME 函数—返回特定时间的序列号

    描述

    返回特定时间的十进制数字。 如果在输入该函数之前单元格格式为“常规”,则结果将使用日期格式。

    由 TIME 返回的十进制数字是一个范围在 0(零)到 0.99988426 之间的值,表示 0:00:00 (12:00:00 AM) 到 23:59:59 (11:59:59 P.M.) 之间的时间。

    用法

    TIME(hour, minute, second)

    TIME 函数用法具有下列参数:

    ü 小时 必需。 0(零)到 32767 之间的数字,代表小时。 任何大于 23 的值都会除以 24,余数将作为小时值。 例如,TIME(27,0,0) = TIME(3,0,0) = .125 或 3:00 AM。

    ü 分钟 必需。 0 到 32767 之间的数字,代表分钟。 任何大于 59 的值将转换为小时和分钟。 例如,TIME(0,750,0) = TIME(12,30,0) = .520833 或 12:30 PM。

    ü 秒 必需。 0 到 32767 之间的数字,代表秒。 任何大于 59 的值将转换为小时、分钟和秒。 例如,TIME(0,0,2000) = TIME(0,33,22) = .023148 或 12:33:20 AM

    注解

    时间值为日期值的一部分,并用十进制数表示(例如 12:00 PM 可表示为 0.5,因为此时是一天的一半)。

    案例

    TIMEVALUE 函数—将文本格式的时间转换为序列号

    描述

    返回由文本字符串表示的时间的十进制数字。 十进制数字是一个范围在 0(零)到 0.99988426 之间的值,表示 0:00:00 (12:00:00 AM) 到 23:59:59 (11:59:59 P.M.) 之间的时间。

    用法

    TIMEVALUE(time_text)

    TIMEVALUE 函数用法具有下列参数:

    ü time_text 必需。 一个文本字符串,代表以任一 Microsoft Excel 时间格式表示的时间(例如,代表时间的具有引号的文本字符串 6:45 PM 和 18:45)。

    其他

    l time_text 中的日期信息会被忽略。

    l 时间值为日期值的一部分,并用十进制数表示(例如 12:00 PM 可表示为 0.5,因为此时是一天的一半)。

    案例

    TODAY 函数—返回今天日期的序列号

    描述

    返回当前日期的序列号。 序列号是 Excel 用于日期和时间计算的日期-时间代码。 如果在输入该函数之前单元格格式为“常规”,Excel会将单元格格式更改为“日期”。 若要显示序列号,您必须将单元格格式更改为“常规”或“数字”。

    不管您何时打开工作薄,当需要在工作表上显示当前日期时,TODAY 函数非常有用。 它还可用于计算时间间隔。 例如,如果您知道某人出生于 1963 年,您可使用以下公式计算对方到其今年生日为止的年龄:

    = YEAR( TODAY())-1963

    此公式使用 TODAY 函数作为 YEAR 函数的参数来获取当前年份,然后减去 1963,最终返回对方的年龄。

    注意: 如果 TODAY 函数并未按预期更新日期,则可能需要更改控制工作簿或工作表何时重新计算的设置。 在“文件”选项卡上单击“选项”,然后确保在“计算选项”下的“公式”类别中选中“自动”。

    用法

    TODAY()

    TODAY 函数用法没有参数。

    注意: Excel 可将日期存储为可用于计算的连续序列号。 默认情况下,1900 年 1 月 1 日的序列号为 1,2008 年 1 月 1 日的序列号为 39,448,这是因为它距 1900 年 1 月 1 日有 39,447 天。

    案例

    WEEKDAY 函数— 将序列号转换为星期日期

    描述

    返回对应于某个日期的一周中的第几天。 默认情况下,天数是 1(星期日)到 7(星期六)范围内的整数。

    用法

    WEEKDAY(serial_number,[return_type])

    WEEKDAY 函数用法具有下列参数:

    ü Serial_number 必需。 一个序列号,代表尝试查找的那一天的日期。 应使用 DATE 函数输入日期,或者将日期作为其他公式或函数的结果输入。 例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。 如果日期以文本形式输入,则会出现问题。

    ü Return_type 可选。 用于确定返回值类型的数字。

    其他

    l Microsoft Excel 可将日期存储为可用于计算的序列号。 默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。

    l 如果 serial_number 不在当前日期基数值范围内,则返回 错误 #NUM!。

    l 如果 return_type 不在上述表格中指定的范围内,则返回 错误 #NUM!。

    案例

    WEEKNUM 函数—将序列号转换为代表该星期为一年中第几周的数字

    描述

    返回特定日期的周数。 例如,包含 1 月 1 日的周为该年的第 1 周,其编号为第 1 周。

    此函数可采用两种机制:

    l 机制 1 包含 1 月 1 日的周为该年的第 1 周,其编号为第 1 周。

    l 机制 2 包含该年的第一个星期四的周为该年的第 1 周,其编号为第 1 周。 此机制是 ISO 8601 指定的方法,通常称作欧洲周编号机制。

    用法

    WEEKNUM(serial_number,[return_type])

    WEEKNUM 函数用法具有下列参数:

    ü Serial_number 必需。 代表一周中的日期。 应使用 DATE 函数输入日期,或者将日期作为其他公式或函数的结果输入。 例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。 如果日期以文本形式输入,则会出现问题。

    ü Return_type 可选。 一数字,确定星期从哪一天开始。 默认值为 1。

    其他

    l Excel 可将日期存储为可用于计算的序列号。 默认情况下,1900 年 1 月 1 日的序列号为 1。 2008 年 1 月 1 日的序列数为 39448,因为它是 1900 年 1 月 1 日之后的第 39,448 天。

    l 如果 serial_number 不在当前日期基数值范围内,则返回 错误 #NUM!。

    l 如果 return_type 不在上述表格中指定的范围内,则返回 错误 #NUM!。

    案例

    WORKDAY 函数—返回指定的若干个工作日之前或之后的日期的序列号

    描述

    返回在某日期(起始日期)之前或之后、与该日期相隔指定工作日的某一日期的日期值。 工作日不包括周末和专门指定的假日。 在计算发票到期日、预期交货时间或工作天数时,可以使用函数 WORKDAY 来扣除周末或假日。

    提示: 若要通过使用参数来指示哪些天是周末以及有多少天是周末来计算指定工作日天数之前或之后日期的序列号,请使用 WORKDAY.INTL 函数。

    用法

    WORKDAY(start_date, days, [holidays])

    WORKDAY 函数用法具有下列参数:

    ü Start_date 必需。 一个代表开始日期的日期。

    ü Days 必需。 start_date 之前或之后不含周末及节假日的天数。 Days 为正值将生成未来日期;为负值生成过去日期。

    ü Holidays 可选。一个可选列表,其中包含需要从工作日历中排除的一个或多个日期,例如各种省/市/自治区和国家/地区的法定假日及非法定假日。该列表可以是包含日期的单元格区域,也可以是由代表日期的序列号所构成的数组常量。

    ü 重要: 应使用 DATE 函数输入日期,或者将日期作为其他公式或函数的结果输入。 例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。 如果日期以文本形式输入,则会出现问题。

    其他

    l Microsoft Excel 可将日期存储为可用于计算的序列号。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。

    l 如果任何参数为无效日期值,则函数 WORKDAY 将返回 错误值 #VALUE!。

    l 如果 start_date 加 days 产生非法日期值,函数 WORKDAY 返回 错误值 #NUM!。

    l 如果 days 不是整数,将截尾取整。

    案例

    WORKDAY.INTL 函数—返回日期在指定的工作日天数之前或之后的序列号

    描述

    返回指定的若干个工作日之前或之后的日期的序列号(使用自定义周末参数)。 周末参数指明周末有几天以及是哪几天。 周末和任何指定为假期的日期不被视为工作日。

    用法

    WORKDAY.INTL(start_date, days, [weekend], [holidays])

    WORKDAY.INTL 函数用法具有下列参数:

    ü Start_date 必需。 开始日期(将被截尾取整)。

    ü Days 必需。 Start_date 之前或之后的工作日的天数。 正值表示未来日期;负值表示过去日期;零值表示开始日期。 Day-offset 将被截尾取整。

    ü weekend 可选。 指示一周中属于周末的日子和不作为工作日的日子。 Weekend 是一个用于指定周末日的周末数字或字符串。

    weekend 数值表示以下周末日:

    周末字符串值的长度为七个字符,并且字符串中的每个字符表示一周中的一天(从星期一开始)。1表示非工作日,0表示工作日。在字符串中仅允许使用字符1和0。1111111是无效字符串。

    例如,0000011结果为星期六和星期日是周末。

    ü holidays可选。 一组可选的日期,表示要从工作日日历中排除的一个或多个日期。 holidays 应是一个包含相关日期的单元格区域,或者是一个由表示这些日期的序列值构成的数组常量。 holidays 中的日期或序列值的顺序可以是任意的。

    其他

    l 如果 start_date 超出了当前日期基值的范围,则函数 WORKDAY.INTL 将返回 错误值 #NUM!。

    l 如果 holidays 中的任何日期超出了当前日期基值的范围,则函数 WORKDAY.INTL 将返回 错误值 #NUM!。

    l 如果 start_date 加上 day-offset 得到一个无效日期,则函数 WORKDAY.INTL 将返回 错误值 #NUM!。

    l 如果 weekend 字符串的长度无效或包含无效字符,则函数 WORKDAY.INTL 将返回 错误值 #VALUE!。

    案例

    YEAR 函数—将序列号转换为年

    描述

    返回对应于某个日期的年份。 Year 作为 1900 - 9999 之间的整数返回。

    用法

    YEAR(serial_number)

    YEAR 函数用法具有下列参数:

    ü Serial_number 必需。 要查找的年份的日期。 应使用 DATE 函数输入日期,或者将日期作为其他公式或函数的结果输入。 例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。 如果日期以文本形式输入,则会出现问题。

    其他

    l Microsoft Excel 可将日期存储为可用于计算的序列号。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。

    l 无论提供的日期值的显示格式如何,YEAR、MONTH 和 DAY 函数返回的值都是公历值。例如,如果提供的日期的显示格式是回历,则 YEAR、MONTH 和 DAY 函数返回的值将是与对应的公历日期相关联的值。

    案例

    YEARFRAC 函数—返回代表 start_date 和 end_date 之间整天天数的年分数

    描述

    返回 start_date 和 end_date 之间的天数占全年天数的百分比。 使用 YEARFRAC 工作表函数可判别某一特定条件下全年效益或债务的比例。

    用法

    YEARFRAC(start_date, end_date, [basis])

    YEARFRAC 函数用法具有下列参数:

    ü Start_date必需。 一个代表开始日期的日期。

    ü End_date必需。 一个代表终止日期的日期。

    ü Basis可选。 要使用的日计数基准类型。

    重要:应使用 DATE 函数输入日期,或者将日期作为其他公式或函数的结果输入。 例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。 如果日期以文本形式输入,则会出现问题。

    其他

    l Microsoft Excel 可将日期存储为可用于计算的序列号。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。

    l 所有参数都将被截尾取整。

    l 如果 start_date 或 end_date 不是有效日期,函数 YEARFRAC 返回 错误值 #VALUE!。

    l 如果 basis 0 或 basis 4,函数 YEARFRAC 返回 错误值 #NUM!。

    案例

    以上是所有EXCEL的日期和时间函数(下)说明语法以及使用案例。这次分享...

  • ?

    21个最常用的Excel日期函数组合

    景骁

    展开

    日期在数据分析中常常是极其重要的一个维度,今天整理了21个最常用的日期函数组合,转需~

    1、=TODAY()

    计算当前的系统日期

    2、=NOW()

    计算当前系统日期和时间

    3、= NOW()-TODAY()

    计算当前是几点几分。

    4、=YEAR(TODAY())

    计算当前日期的年份

    5、=MONTH(TODAY())

    计算当前日期的月份

    6、=DAY(TODAY())

    计算当前日期是几号。

    7、=WEEKDAY(TODAY(),2)

    计算今天是星期几。

    8、=EDATE(TODAY(),1)

    计算当前日期之后一个月的日期。

    9、=EOMONTH(TODAY(),1)

    计算下个月最后一天的日期。

    10、=EOMONTH(TODAY(),0)-TODAY()

    计算今天到本月底还有多少天。

    11、="12-31"-"1-1"+1

    计算今年有几天。

    12、=TODAY()-"1-1"+1

    计算今天是今年的第几天。

    13、=WORKDAY(TODAY(),1)

    计算下个工作日是哪天。

    14、=EOMONTH(NOW(),0)-TODAY()

    计算这个月还有几天。

    15、=DAY(EOMONTH(NOW(),1))

    计算下个月有几天。

    16、=WEEKNUM(NOW())

    计算今天是本年度的第几周。

    17、=IF(COUNT(-"2-29"),"是","否")

    计算今年是不是闰年。

    18、=DATEDIF("2008-2-28",TODAY(),"m")

    计算自2008年2月28日到今天有几个月。

    19、=MONTH(MONTH(TODAY())*10)

    计算今天属于第几季度

    20、=COUPDAYBS(NOW(),"9999-1",4,1)+1

    计算今天是本季度的第几天。

    21、=COUPDAYS(NOW(),"9999-1",4,1)

    计算当前季度有几天。

    好了,今天的分享就到这,有需要的小伙伴,赶紧转发收藏吧,欢迎留言评论^_^

  • ?

    EXCEL日期和时间函数的使用方法

    凡星

    展开

    ● 函数分类

    ▼表 1-1 返回当前的日期和时间以及指定的日期和时间

    函数名称 功能

    DATE 返回指定的日期的序列号

    NOW 返回日期时间格式的当前日期和时间

    TODAY 返回当前日期

    TIME 将制定内容显示为一个时间

    ▼表 1-2 返回日期和时间的某个部分

    函数名称 功能

    DAY 返回日期中具体的某一天

    HOUR 返回小时数

    MONTH 返回月份

    MINUTE 返回分钟数

    SECOND 返回秒数

    YEAR 返回年份

    WEEKDAY 返回当前日期是星期几

    01 日期和时间函数 日期和时间函数是用来计算日期和时间,或设置日期和时

    间的格式的函数,例如"计算员工工龄"。Excel 2013提供了 24

    个日期和时间函数,本章将详细介绍日期和时间函数的基本用

    法及函数的实际工作中的应用。

    ▼表 1-3 文本与日期、时间格式间的转换

    函数名称 功能

    DATEVALUE 将文本格式的日期转换为序列号

    TIMEVALUE 将指定日期的序列号转换为文本日期

    ▼表 1-4 其他日期函数

    函数名称 功能

    DAYS 计算两个日期之间的天数

    DAY360 以 360天为准计算两个日期间天数

    EDATE 计算从起始日期向前或向后几个月的日期

    的序列号

    EOMONTH 计算从起始日期向前或向后几个月的月份

    的最后一天的序列号

    ISOWEEKNUM 返回给定日期在全年中的 ISO 周数

    NETWORKDAYS 计算日期间的所有工作数

    NETWORKDAYS.INTL 计算日期间的所有工作日数,使用参数指明

    周末的日期和天数

    WORKDAY 计算与指定日期相隔数个工作日的日期

    WORKDAY.INTL 计算与制定日期相隔数个工作日的日期,使

    用参数指明周末的日期和天数

    WEEKNUM 返回日期在一年中是第几周

    YEARFRAC 计算从起始日期到终止日期所经历的天数

    占全年天数的百分比

    使用 YEAR和MONTH函数提取当前日期的年份和月份,并

    将月份加 1,日部分设置为 0,表示下个月的第 0天,即当前月份

    的最后一天。最后使用 TEXT 函数将结果设置为以阿拉伯数字表

    示的本月的天数。

    DATE

    返回指定日期的序列号

    特定日期

    的序列号

    函数格式: DATE(year,month,day)

    参数说明: year(必选):指定年份或者年份所在的单元格。

    month(必选):指定月份或者月份所在的单元格。

    day (必选):指定日或者日所在的单元格。

    注意事项: (1)所有参数可以是直接输入的数字或单元格引用。

    (2)所有参数都必须为数值类型,即数字、文本格式的数

    字或表达式。如果是文本,则返回错误值#VALUE!。

    (3)参数 year的值必须在 1900~9999之间,如果大于 9999,

    则返回错误值#VALUE!。参数 month和 day不同,month的正

    常范围是 1~12,day的正常范围是 1~31。

    (4)DATE函数对月和日有自动更正功能。如果月大于 12,

    那么 Excel会自动转换到下一年;如果日大于 31,Excel会将其

    转换到下一个月。同理,如果月和日都小于 1,则 Excel会将其

    转换到上一年或上一个月。

    案例 计算本月的天数

    使用 DATE 函数时还可以把公式作为函数的参数。例如:利

    用DATE函数来求 1个月后的日期,此时需要在month参数上加 1。

    在 单 元 格 B1 中 输 入 公 式 =TEXT

    (DATE(YEAR(TODAY()),MONTH(TODAY())+1,0)

    ,"d"),并按下【Enter】键。

    案例 显示 1 个月后的日期

    ①在单元格 B4 中输入公式

    =DATE($A$1,$A$2+1,A4),并按

    下【Enter】键。

    ②向下复制公式,计算其他

    单元格的值。

    NOW

    返回日期时间格式的当前日期和时间

    当前

    日期

    函数格式: NOW()

    参数说明: 不需要参数,但必须有()。如果括号中输入参数,则会返

    回错误值。

    使用 NOW 函数返回当前日期,然后使用 TEXT 函数将当前

    日期设为"月-日"格式。再使用 10月 1日减去当前日期,然后使用

    TEXT函数将差值设置为数字格式,即日期序列号。最后加 1即可

    得到当前日期距离 10月 1日的天数。

    输入 NOW 函数,显示当前日期和时间。如果函数所在的单

    元格格式为"常规",则 Excel显示如"2014/8/4 14:00"的日期格式。

    用户也可以根据需要重新设置单元格格式。

    注意事项: (1)NOW函数返回的是 Windows系统中设置的日期和时

    间。

    (2)NOW 函数返回的日期和时间不会实时更新,除非工

    作表被重新计算。

    (3)在格式为"常规"的单元格中使用 NOW函数时,返回

    以正常的日期格式显示的当前日期和时间。如果需要显示当前

    日期对应的序列号,需将单元格格式设置为"常规"。也可以使

    用 TEXT函数强制单元格中的日期显示为序列号。

    案例 十一倒计时

    在 单 元 格 B1 中 输 入 公 式

    =TEXT("10-1"-TEXT(NOW(),"mm-dd"),"0")+1

    ,并按下【Enter】键。

    案例 显示当前日期和时间

    如果员工的"离职日期"对应列的单元格为空,说明员工未

    离职,则计算该员工从入职日期到当前日期的天数;如果不为空,

    说明员工已经离职,则使用离职日期减去入职日期。

    在单元格 B1 中输入公式 NOW()

    并按下【Enter】键。

    案例 计算员工在职时间

    在 单 元 格 G2 中 输 入 公 式

    =ROUND(IF(F2<>"",F2-E2,NOW(

    )-B2),0)并按下【Enter】键。

    TODAY

    返回当前日期

    当前

    日期

    函数格式: TODAY()

    参数说明: 不需要参数。

    注意事项: (1)TODAY函数返回的是Windows系统中设置的日期。

    (2)TODAY 函数返回的日期不会实时更新,除非工作表

    被重新计算。

    如果已知某人的身份证号,则可以使用MID函数提取其出生

    年份,然后使用 TODAY 函数计算其年龄,使用 YEAR函数返回

    年数。

    新员工入职后,一般都要先进行试用。本案例以试用期为 1

    个月即 30天为例,统计新入职的员工试用期到期的人数。首先试

    用 TOADY 函数获得当前日期,然后减去 30,再与员工的入职时

    间进行比较。如果入职时间大,则说明该员工试用期已经到期,

    然后使用 COUNTIF函数统计符合条件的个数即可。

    (3)在格式为"常规"的单元格中使用 TODAY 函数时,返

    回以正常的日期格式显示的当前日期。如果需要显示当前日期

    对应的序列号,需将单元格格式设置为"常规"。

    案例 计算年龄

    在单元格 F2 中输入公式

    =YEAR(TODAY())-MID(C2,

    7,4),并按下【Enter】键。

    案例 统计试用期到期的人数

    在单元格 C2 中输入公式

    =COUNTIF(C3:C12,"<"&TOD

    AY()-90),并按下【Enter】

    键。

    本案例以安排会议时间为例,首先使用 TEXT(NOW())获

    得格式化后的当前时间,然后加上时间间隔,例如 1 个半小时,

    此时间间隔可由 TIME函数得到,最后计算出准确的会议时间。

    TIME

    返回指定时间的序列号

    特定日期

    的序列号

    函数格式: TIME(hour,minute,second)

    参数说明: hour(必选):表示小时。0(零)到 32767 之间的数值。

    任何大于 23 的数值将除以 24,其余数将视为小时。

    minute(必选):表示分钟。0 到 32767 之间的数值。任

    何大于 59 的数值将被转换为小时和分钟。

    second(必选):表示秒。0 到 32767 之间的数值。任何

    大于 59 的数值将被转换为小时、分钟和秒。

    注意事项: (1)所有参数可以是直接输入的数字或单元格引用。

    (2)所有参数都必须为数值类型,即数字、文本格式的数

    字或表达式。如果是文本,则返回错误值#VALUE!。

    (3)如果在输入函数前,单元格的格式为"常规",则结果

    将设为日期格式。

    案例 安排会议时间

    使用 TIME 函数,将输入在各个单元格内的时、分、秒合为

    一个数值。

    效果如下图所示。

    在 单 元 格 B1 中 输 入 公 式 =TEXT

    (NOW(),"hh:mm")+TIME(1,30,0) , 并 按 下

    【Enter】键。

    案例 返回指定时间的序列号

    ①在单元格 D2 中插入

    TIME函数。

    ②单击要输入函数的

    单元格。

    ③指定参数,然后单击

    "确定"按钮。

    10

    使用 DAY函数提取"日"。

    DAY

    返回日期中具体的某一天

    用序列号

    表示日期

    函数格式: DAY(serial_number)

    参数说明: serial_number:表示要查找的天数日期。日期有多种输入

    方式:带引号的文本串(例如 "1988/01/30")、系列数(例如,

    如果使用 1900 日期系统则 35825 表示 1998 年 1 月 30

    日 ) 或 其 他 公 式 或 函 数 的 结 果 ( 例 如

    DATEVALUE("1998/1/30"))。

    注意事项: (1)使用 DAY 函数,只显示日期值或表示日期文本的天

    数,返回值为 1~31间的整数。

    (2)serial_number表示的日期应该以标准的日期格式输入,

    或者使用 DATE、NOW、TODAY 等函数输入。如果日期以非

    标准日期格式的文本形式输入,DAY 函数将返回错误值

    #VALUE!。

    案例 提取"日"

    ①单击"插入函数"按钮。

    11

    提取结果如下。

    公司每天都有其销售记录,并需定期对销售情况进行分析。

    本案例以统计本月上旬销售总额为例,首先使用 DAY 函数提取

    "日",然后判断是否小于 11。如果小于 11,则该日期为本月上旬,

    然后返回该日期的销售额,最后使用 SUM 函数对返回的数组求

    和。

    ②在弹出的"插入函

    数"对话框中选择 DAY

    函数,然后单击"确

    定"按钮。

    ③指定参数,然后单击

    "确定"按钮。

    案例 计算本月上旬销售总额

    12

    使用 HOUR函数提取"小时"。

    在单元格 C1中输入公式

    "=SUM(IF(DAY(A3:A27

    )<11,B3:B27)),然后按

    下【Ctrl+Shift+Enter】

    组合键。

    HOUR

    返回小时数

    用序列号

    表示日期

    函数格式: HOUR(serial_number)

    参数说明: serial_number:表示要提取小时数的时间,可以是表示时

    间的序列号、时间文本或单元格引用。

    注意事项: (1)使用 HOUR函数只显示日期值或表示日期的文本的小

    时数。返回值是 0~23间的整数。

    (2)serial_number 参数必须为数值类型,即数字、文本格

    式的数字或表达式。如果是文本,则返回错误值#VALUE!。

    (3)如果小时超过 24,则 HOUR 函数将提取实际小时与

    24 的差值。例如,如果时间的小时部分为 29,那么 HOUR 函

    数提取小时的返回值为 5。

    案例 提取"小时"

    13

    提取结果如下。

    有些公司使用的是 24小时工作制,假设从早上 8点到晚上 20

    点为白班时间,其他为夜班时间。本案例首先使用 HOUR函数返

    回时间中的小时数;然后使用 AND函数来判断 HOUR函数返回

    ①单击"插入函数"按钮。

    ②在弹出的"插入函

    数"对话框中选择 HOUR

    函数,然后单击"确

    定"按钮。

    ③指定参数,然后单击

    "确定"按钮。

    案例 工作排班

    14

    的数值是否符合条件,如果两个条件均符合,则 AND函数返回值

    为 TRUE,否则返回 FALSE;最后通过 IF函数判断,如果时间段在

    8点到 20点,则条件为真,输出"白班",否则输出"夜班"。

    ①在单元格 C2中输入公

    式 " =IF(AND(HOUR

    (B2)>=8.5,HOUR(B2)<=

    20.5)," 白 班 "," 夜 班

    ")",然后按下 Enter

    键。

    ②使用填充柄向下填充。

    MONTH

    返回月份

    用序列号

    表示日期

    函数格式: MONTH(serial_number)

    参数说明: serial_number:表示要提取月份的日期,可以是表示日期

    的序列号、日期文本或单元格引用。

    注意事项: (1)使用MONTH函数只显示日期值或表示日期的文本的

    月份。返回值是 1~12间的整数。

    (2)参数 serial_number表示的日期应该以标准的日期格式

    输入,或者用 DATE、NOW、TODAY 等函数输入。如果日期

    以非标准日期格式的文本形式输入,MONTH 函数将返回错误

    值#VALUE!。

    15

    使用MONTH函数提取"月"。

    提取结果如下。

    案例 提取"月"

    ①单击"插入函数"按钮。

    ②在弹出的"插入函

    数 " 对 话 框 中 选 择

    MONTH 函数,然后单击

    "确定"按钮。

    ③指定参数,然后单击

    "确定"按钮。

    16

    使用MONTH函数返回日期中的小时数,然后通过 IF函数判

    断,如果条件为真,输出"√",否则输出空白。

    首先使用 YEAR 函数提取单元格 A2 中的年份,然后使用

    DATE 函数将该年份和 2、29 组合为一个日期,即今年的 2 月 29

    日。闰年 2月有 29天,非闰年 2月只有 28天,利用 DATE函数

    的自动更正日期错误功能,并使用 MONTH 函数提取 DATE 函数

    产生的日期中的月份。如果是闰年,提取出的月份就等于 2;如果

    不是,DATE函数会将 2月 29日自动进位到 3月 1日。最后通过

    IF函数判断,如果条件为真,输出"是",否则输出"不是"。

    案例 标记 7...

  • ?

    常用的Excel日期函数

    Tong

    展开

    Excel日期大家都会用,但是你知道Excel中有多少日期和时间函数吗?Excel为我们提供了大约20个日期和时间函数,这些函数对于处理表格中的日期数据都是非常有用的。下面介绍几个常用的Excel日期函数及其实际应用案例。

    (1)处理动态日期

    在处理动态日期时,可以使用TODAY函数,该函数会得到计算机系统的当前日期。这个函数在处理动态日期表头或者在动态汇总计算时,是非常有用的。

    图1所示是一个销售流水账,现在要求动态计算截止到今天的累计销售额。单元格E2和E3的计算公式分别为:

    图1

    单元格E2:=TODAY();

    单元格E3:=SUMPRODUCT((A3:A37<=TODAY())*133:B37)。

    (2)拆分日期

    要把一个日期拆分成年、月、日数字。可以使用YEAR函数、MONTH函数和DAY函数。

    以案例1—24中的数据为例,要计算上个月的销售总额,则单元格E4中的计算公式如下:

    =SUMPRODUCT((MONTH(A3:A37)=MONTH(TODAY())-1)*B3:B37)

    结果如图2所示。

    图2

    (3)合并日期

    如果要把3个分别表示年、月、日的数字组合成一个日期,就需要使用DATE函数。例如,年月、日3个数字分别是2010、4、30,则日期公式为:

    =DATE(2010,4,30)

    (4)判断周次

    如果要判断某个日期是该年份的第几周,可以使用WEEKNUM函数,其语法为:

    =WEEKNUM(serial_num,return_type)

    =WEEKNUM(日期,类别)

    当参数return_type省略或为1时,表示将星期日作为一个星期的起始日;当参数return_type为2时,表示将星期一作为一个星期的起始日。

    例如:2010年4月30日是2010年的WEEKNUM("2010-4-30".2)=18周

    以上一个案例中的数据为例,要计算本周和上周的销售总额,则需要插入一个辅助列。以计算出每个日期对应的周次数,即在单元格C3中输入下面的公式,并复制到最后一行:

    =WEEKNUM(A3,2)

    然后就可以根据C列的周次数字进行判断,计算本周和上周的销售总额,公式如下:

    单元格F3:=SUMIF(C:C.WEEKNUM(TODAY()。2)。B:B);

    单元格F4:=SUMIF(C:C.WEEKNUM(TODAY()。2)-1,B:B)。

    计算结果如图3所示。

    图3

    (5)判断星期几

    要判断某个日期是星期几,需要使用WEEKDAY函救。这个函数常常用在设计日程安排表或者制作相关的报表方面。

    WEEKDAY函数用于获取某日期为星期几。默认情况下。其值为1(星期日)—7 (星期六)之间的整数。其语法如下:

    =WEEKDAY(serial_number, return_type)

    =WEEKDAY(日期,[类型])

    参数serial_number为日期序列号。可以是日期数据或日期数据单元格的引用。

    参数return_type为确定返回值类型的数字。如下所示:

    参数return_type的值 星期说明

    1或省略 数字1表示星期日。2表示星期……7表示星期六

    2 数字1表示星期一。2表示星期二……7表示星期日

    3 数字0表示星期一。1表示星期二……6表示星期日

    例如:

    =WEEKDAY("2010-4-10",1)=7

    =WEEKDAY("2010-4-10",2}=6

    从我国的习惯来说。将参数return_type设置为2是恰当的。

    以上节中的数据为例。要了解2010年4月份每个星期几的销售分布。这样可以了解商品在星期几销售较好或者较差。如图4所示,相关单元格的计算公式分别为:

    图4

    单元格E3:=SUMPRODuCT((MONTH(A3:A37)=4)*(WEEKDAY(A3:A37,2)=1)*B3:B37);

    单元格E4:=SUMPRODUCT((MONTH(A4:A38)=4)*(WEEKDAY(A4:A38,2)=2)*B4:B38):

    单元格E5:=SUMPRODUCT((MONTH(A5:A39)=4)*(WEEKDAY(A5:A39,2)=3)*B5:B39);

    单元格E6:=SuMPRODUCT((MONTH(A6:A40)=4)*(WEEKDAY(A6:A40,2)=4)*B6:B40);

    单元格E7:=SUMPRODUCT((MONTH(A7:A41)=4)*(wEEKDAY(A7:A41,2)=5)*B7:B41);

    单元格E8:=SUMPRODUCT((MONTH(A8:A42)=4)*(WEEKDAY(A8:A42,2)=6)*B8:B42);

    单元格E9:=SUMPR00uCT((MONTH(A9:A43)=4)*(WEEKDAY(A9:A43,2)=7)*B9:B43)。

    (6)计算某个具体日期

    当需要计算某个具体的日期时。例如计算指定日期往前或往后几个月的日期。或者计算指定日期往前或往后几个月的特定月份的月底日期。就可以使用EDATE函数和EOMONTH函数。

    EDATE函数用于获取指定日期往前或往后几个月的日期。其语法如下:

    =EDATE(start_date,months)

    =EDATE(开始日期,几个月)

    例如:

    2010年4月30日之后3个月的日期:=EDATE("2010-4-30".3)。为2010-7-30;

    2010年4月30日之前3个月的日期:=EDATE("2007-4-30".一3)。为2010-1-30。

    EOMONTH函数用于获取指定日期往前或往后几个月的特定月份的月底日期。其语法为:

    =EOMONTH(start_date,months)

    =EOMONTH(开始日期,几个月)

    例如:

    2010年4月30日之后3个月的月底日期:=EOMONTH("2010-4-30",3)。为2010—7—31:

    2010年4月30日之前3个月的月底日期:=EOMONTH("2010-4-30".-3)。为2010-1-31:

    获取当月量后一天的日期:=EOMONTH(TODAY()。0)。

    图5所示是计算合同到期日的表格。其中单元格D2中的计算公式为:

    =EDATE(B2,C2*12)-1

    图5

    今天我们学习了常用的Excel日期函数,其中列举了处理动态日期、拆分日期、合并日期、判断周次、判断星期几、计算某个具体日期等几个关于Excel日期函数的实例。

  • ?

    Excel函数公式:实用的日期函数公式全集

    费夜柳

    展开

    实际的工作中,用到日期的地方非常的多,如果每次都是手动去处理,那将会非常的麻烦。

    一、获取当前系统日期及时间。

    方法:

    1、选定目标单元格。

    2、快捷键:Ctrl+;、Ctrl+Shift+;

    二、YEAR:计算年份。

    方法:

    在目标单元格中输入公式:=YEAR(A3)。

    三、MONTH:计算月份。

    方法:

    在目标单元格中输入公式:=MONTH(A3)。

    四、DAY:计算号数。

    方法:

    在目标单元格中输入公式:=DAY(A3)。

    五、TEXT:星期(中国)。

    方法:

    在目标单元格中输入公式:=TEXT(A3,"aaaa")。

    六、TEXT:星期(英文)。

    方法:

    在目标单元格中输入公式:=TEXT(A3,"dddd")。

    七、LEN+MONTH:计算季度。

    方法:

    在目标单元格中输入公式:=LEN(2^MONTH(A3))。

    八、WEENNUM:计算日期是本年的第几周。

    方法:

    在目标单元格中输入公式:=WEEKNUM(A3)。

    九、第X天。

    方法:

    在目标单元格中输入公式:=A3-"1-1"+1。

    十、DAY+EOMONTH:本月有几天。

    方法:

    在目标单元格中输入公式:=DAY(EOMONTH(A3,0))。

  • ?

    EXCEL-15个日期与时间函数的用法解析

    Karli

    展开

    1,DATE函数—将数组转换为日期。

    2,DATEDIF函数—计算两个日期间隔的时间。

    3,DAY函数—返回指定日期对应的天数。

    4,DAYS360函数—返回两日期间相差的天数。

    5,EDATE函数—返回表示某个日期相隔月份的序列号。

    6,EOMONTH函数—返回某个月份最后一天的序列号。

    7,HOUR函数—返回时间值的小时数。

    8,MINUTE函数—返回时间值中的分钟。

    9,MONTH函数—返回以序列号表示的日期中的月份。

    10,NETWORKDAYS函数—返回两日期 之间的工作日数值。

    11,WEEKNUM—返回特定日期的周数。

    12,WEEKDAY—返回某日期为星期几。

    13,WORKDAY—返回在某日期相隔指定工作日的日期值。

    14,SECOND—返回时间值的秒数。

    15,YEAR函数—返回某日期对应的年份。

  • ?

    2017年最全的excel函数大全6—日期和时间函数(上)

    凌云露

    展开

    上次给大家分享了《2017年最全的excel函数大全(5)——逻辑函数》,这次分享给大家日期和时间函数(上)。

    DATE 函数

    返回特定日期的序列号

    描述

    DATE 函数返回表示特定日期的连续序列号。

    用法

    DATE(year,month,day)

    DATE 函数用法具有下列参数:

    ü Year:必需。year 参数的值可以包含一到四位数字。Excel 将根据计算机正在使用的日期系统来解释 year 参数。默认情况下,Microsoft Excel for Windows 使用的是 1900 日期系统,这表示第一个日期为 1900 年 1 月 1 日。

    提示: 为避免出现意外结果,请对 year 参数使用四位数字。例如,“07”可能意味着“1907”或“2007”。因此,使用四位数的年份可避免混淆。

    · 如果 year 介于 0(零)到 1899 之间(包含这两个值),则 Excel 会将该值与 1900 相加来计算年份。例如,DATE(108,1,2) 返回 2008 年 1 月 2 日 (1900+108)。

    · 如果 year 介于 1900 到 9999 之间(包含这两个值),则 Excel 将使用该数值作为年份。例如,DATE(2008,1,2) 将返回 2008 年 1 月 2 日。

    · 如果 year 小于 0 或大于等于 10000,则 Excel 返回 错误值 #NUM!。

    ü 月:必需。 一个正整数或负整数,表示一年中从 1 月至 12 月(一月到十二月)的各个月。

    · 如果 month 大于 12,则 month 会从指定年份的第一个月开始加上该月份数。例如,DATE(2008,14,2) 返回表示 2009 年 2 月 2 日的序列数。

    · 如果 month 小于 1,则 month 会从指定年份的第一个月开始减去该月份数,然后再加上 1 个月。例如,DATE(2008,-3,2) 返回表示 2007 年 9 月 2 日的序列号。

    ü 日:必需。 一个正整数或负整数,表示一月中从 1 日到 31 日的各天。

    · 如果 day 大于指定月中的天数,则 day 会从该月的第一天开始加上该天数。例如,DATE(2008,1,35) 返回表示 2008 年 2 月 4 日的序列数。

    · 如果 day 小于 1,则 day 从指定月份的第一天开始减去该天数,然后再加上 1 天。例如,DATE(2008,1,-15) 返回表示 2007 年 12 月 16 日的序列号。

    注意: Excel 可将日期存储为连续序列号,以便能在计算中使用它们。1900 年 1 月 1 日的序列号为 1,2008 年 1 月 1 日的序列号为 39448,这是因为它与 1900 年 1 月 1 日之间相差 39,447 天。需要更改数字格式(设置单元格格式)以显示正确的日期。

    案例

    案例 1

    例如:=DATE(C2,A2,B2) 将单元格 C2 中的年、单元格 A2 中的月以及单元格 B2 中的日合并在一起,并将它们放入一个单元格内作为日期。以下案例显示了单元格 D2 中的最终结果。

    案例 2根据其他日期计算某个日期

    可以使用 DATE 函数创建基于其他单元格中日期的一个日期。例如,可以使用 YEAR、MONTH 和 DAY 函数来创建基于另一个单元格的周年纪念日期。假设,某个员工第一天上班的日期为 2016 年 10 月 1 日,则可以使用 DATE 函数创建他上班 5 周年的纪念日期:

    1. DATE 函数会创建一个日期。

    2. =DATE(YEAR(C2)+5,MONTH(C2),DAY(C2))

    3. YEAR 函数会查找单元格 C2 并从中提取“2012”。

    4. “+5”表示加上 5 年,并在单元格 D2 中创建“2017”作为周年纪念日的年。

    5. MONTH 函数从单元格 C2 中提取“3”。这将在单元格 D2 中创建“3”作为月。

    6. DAY 函数从单元格 C2 中提取“14”。这将在单元格 D2 中创建“14”作为天。

    案例 3 将文本字符串和数字转换为日期

    有时Excel的日期是无法识别的。这可能是因为数字与典型的日期不相似,也可能因为数据被设置成了文本格式。如果是这种情况,则可以使用 DATE 函数将信息转换成日期。例如,在下图中,单元格 C2 包含采用以下格式的日期:YYYYMMDD。它也被设置成了文本格式。若要将其转换成日期,则可以将 DATE 函数与 LEFT、MID 和 RIGHT 函数配合使用。

    1. DATE 函数会创建一个日期。

    2. =DATE(LEFT(C2,4),MID(C2,5,2),RIGHT(C2,2))

    3. LEFT 会在单元格 C2 中查找并从左起提取前 4 个字符。这将在单元格 D2 中创建“2014”作为转换后日期的年。

    4. MID 函数将在单元格 C2 中查找。它将从第 5 个字符开始,然后向右提取 2 个字符。这将在单元格 D2 中创建“03”作为转换后日期的月。因为 D2 的格式设置为 Date,因此“0”不包括在最终结果中。

    5. RIGHT 函数会在单元格 C2 中查找,然后从最右侧开始向左提取前 2 个字符。这将在 D2 中创建“14”作为日期的日。

    案例 4 按一定的天数加减日期

    若要按一定的天数加减日期,只需向值或包含日期的单元格引用加上或减去天数即可。

    在以下案例中,单元格 A5 包含我们想加上和减去 7 天(C5 中的值)的日期。

    DATEDIF 函数

    计算两个日期之间的天数、月数或年数。

    描述

    计算两个日期之间相隔的天数、月数或年数。警告:Excel 提供了 DATEDIF 函数,以便支持来自 Lotus 1-2-3 的旧版工作簿。在某些应用场景下,DATEDIF 函数计算结果可能并不正确。有关详细信息,请参阅本文中的“已知问题”部分。

    用法

    DATEDIF(start_date,end_date,unit)

    ü Start_date:用于表示时间段的第一个(即起始)日期的日期。 日期值有多种输入方式:带引号的文本字符串(例如 2001/1/30)、序列号(例如 36921,在商用 1900 日期系统时表示 2001 年 1 月 30 日)或其他公式或函数的结果(例如 DATEVALUE(2001/1/30))。

    ü End_date:用于表示时间段的最后一个(即结束)日期的日期。

    ü Unit:要返回的信息类型:

    其他

    l 日期存储为可用于计算的序列号。默认情况下,1899 年 12 月 31 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。

    l DATEDIF 函数在用于计算年龄的公式中很有用。

    案例

    已知问题

    “MD”参数可能导致出现负数、零或不准确的结果。若要计算上一完整月份后余下的天数,可使用如下方法:

    此公式从单元格 E17 中的原始结束日期 (5/6/2016) 减去当月第一天 (5/1/2016)。其原理如下:首先,DATE 函数会创建日期 5/1/2016。DATE 函数使用单元格 E17 中的年份和单元格 E17 中的月份创建日期。1 表示该月的第一天。DATE 函数的结果是 5/1/2016。然后,从单元格 E17 中的原始结束日期(即 5/6/2016)减去该日期。5/6/2016 减 5/1/2016 得 5 天。

    DATEVALUE 函数

    将文本格式的日期转换为序列号

    描述

    DATEVALUE 函数将存储为文本的日期转换为 Excel 识别为日期的序列号。 例如,公式=DATEVALUE(1/1/2008) 返回 39448,即日期 2008-1-1 的序列号。 即使如此,请注意,计算机的系统日期设置可能会导致 DATEVALUE 函数的结果会与此案例不同。

    如果工作表包含采用文本格式的日期并且要对这些日期进行筛选、排序、设置日期格式或执行日期计算,则 DATEVALUE 函数将十分有用。

    用法

    DATEVALUE(date_text)

    DATEVALUE 函数用法具有下列参数:

    ü Date_text 必需。代表采用 Excel 日期格式的日期的文本,或是对包含这种文本的单元格的引用。例如,用于表示日期的引号内的文本字符串 2008-1-30 或 30-Jan-2008。

    · 使用 Microsoft Excel for Windows 中的默认日期系统时,参数 date_text 必须代表 1900 年 1 月 1 日和 9999 年 12 月 31 日之间的某个日期。 如果参数 date_text的值在此范围之外, DATEVALUE函数将返回错误值 “#VALUE!。

    · 如果省略参数 date_text 中的年份部分,则 DATEVALUE 函数会使用计算机内置时钟的当前年份。 参数 date_text 中的时间信息将被忽略。

    其他

    l Excel 可将日期存储为序列号,以便可以在计算中使用它们。 默认情况下,1900 年 1 月 1 日的序列号为 1,2008 年 1 月 1 日的序列号为 39,448,这是因为它距 1900 年 1 月 1 日有 39,447 天。

    l 大部分函数都会自动将日期值转换为序列数。

    案例

    DAY 函数

    将序列号转换为月份日期

    描述

    返回以序列数表示的某日期的天数。 天数是介于 1 到 31 之间的整数。

    用法

    DAY(serial_number)

    DAY 函数用法具有下列参数:

    ü Serial_number 必需。要查找的日期。应使用 DATE 函数输入日期,或将日期作为其他公式或函数的结果输入。例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。如果日期以文本形式输入,则会出现问题。

    其他

    l Microsoft Excel 可将日期存储为可用于计算的序列号。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。

    l 无论提供的日期值的显示格式如何,YEAR、MONTH 和 DAY 函数返回的值都是公历值。例如,如果提供的日期的显示格式是回历,则 YEAR、MONTH 和 DAY 函数返回的值将是与对应的公历日期相关联的值。

    案例

    DAYS 函数

    返回两个日期之间的天数

    描述

    返回两个日期之间的天数。

    用法

    DAYS(end_date, start_date)

    DAYS 函数用法具有以下参数。

    ü End_date 必需。 Start_date 和 End_date 是用于计算期间天数的起止日期。

    ü Start_date 必需。Start_date 和 End_date 是用于计算期间天数的起止日期。

    注意: Excel 可将日期存储为序列号,以便可以在计算中使用它们。 默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39447 天。

    其他

    l 如果两个日期参数为数字,DAYS 使用 EndDate–StartDate 计算两个日期之间的天数。

    l 如果任何一个日期参数为文本,该参数将被视为 DATEVALUE(date_text) 并返回整型日期,而不是时间组件。

    l 如果日期参数是超出有效日期范围的数值,DAYS 返回 #NUM! 错误值。

    l 如果日期参数是无法解析为字符串的有效日期,DAYS 返回 #VALUE! 错误值。

    案例

    DAYS360 函数

    以一年 360 天为基准计算两个日期间的天数

    描述

    按照一年 360 天的算法(每个月以 30 天计,一年共计 12 个月),DAYS360 函数返回两个日期间相差的天数,这在一些会计计算中将会用到。 如果财会系统是基于一年 12 个月,每月 30 天,可使用此函数帮助计算支付款项。

    用法

    DAYS360(start_date,end_date,[method])

    DAYS360 函数用法具有下列参数:

    ü Start_date、end_date 必需。 用于计算期间天数的起止日期。 如果 start_date 在 end_date 之后,则 DAYS360 函数将返回一个负数。 应使用 DATE 函数输入日期,或者将从其他公式或函数派生日期。 例如,使用函数 DATE(2008,5,23) 以返回 2008 年 5 月 23 日。 如果日期以文本形式输入,则会出现问题。

    ü 方法 可选。 逻辑值,用于指定在计算中是采用美国方法 还是欧洲方法。

    注意:Excel 可将日期存储为序列号,以便可以在计算中使用它们。 默认情况下,1900 年 1 月 1 日的序列号为 1,2008 年 1 月 1 日的序列号为 39,448,这是因为它距 1900 年 1 月 1 日有 39,447 天。

    案例

    EDATE 函数

    返回用于表示开始日期之前或之后月数的日期的序列号

    描述

    返回表示某个日期的序列号,该日期与指定日期 (start_date) 相隔(之前或之后)指示的月份数。 使用函数 EDATE 可以计算与发行日处于一月中同一天的到期日的日期。

    用法

    EDATE(start_date, months)

    EDATE 函数用法具有以下参数:

    ü Start_date 必需。一个代表开始日期的日期。应使用 DATE 函数输入日期,或将日期作为其他公式或函数的结果输入。例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。如果日期以文本形式输入,则会出现问题。

    ü Months必需。 start_date 之前或之后的月份数。 months 为正值将生成未来日期;为负值将生成过去日期。

    其他

    Microsoft Excel 可将日期存储为可用于计算的序列号。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。如果 start_date 不是有效日期,则 EDATE 返回 错误值 #VALUE!。 如果 months 不是整数,将截尾取整。

    案例

    EOMONTH 函数

    返回指定月数之前或之后的月份的最后一天的序列号

    描述

    返回某个月份最后一天的序列号,该月份与 start_date 相隔(之后或之后)指示的月份数。 使用函数 EOMONTH 可以计算正好在特定月份中最后一天到期的到期日。

    用法

    EOMONTH(start_date, months)

    EOMONTH 函数用法具有以下参数:

    ü Start_date 必需。一个代表开始日期的日期。应使用 DATE 函数输入日期,或将日期作为其他公式或函数的结果输入。例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。如果日期以文本形式输入,则会出现问题。

    ü Months 必需。 start_date 之前或之后的月份数。 months 为正值将生成未来日期;为负值将生成过去日期。

    注意: 如果 months 不是整数,将截尾取整。

    其他

    l Microsoft Excel 可将日期存储为可用于计算的序列号。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。

    l 如果 start_date 不是有效日期,则 EOMONTH 返回 错误值 #NUM!。

    l 如果 start_date 加 months 产生非法日期值,则 EOMONTH 返回 错误值 #NUM!。

    案例

    HOUR 函数

    将序列号转换为小时

    描述

    返回时间值的小时数。 小时数是介于 0 ...

excel日期函数

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP