中企动力 > 商学院 > excel判断日期大小
  • ?

    Excel中如何实现按日期筛选数据

    干怜烟

    展开

    有小伙伴用Excel统计数据,可是在设置按日期筛选时,没办法实现按年、月、日维度筛选。问题出在哪了?

    原来,表中他录入日期数据时,并不是用的Excel标准的日期格式,而是随手自己写的。Excel中日期格式默认的标准是用“-”、“/”或者直接中文“年月日”来分隔的。那么,就以下表举例,如果格式输入错误,可还是想对日期栏进行筛选,比如筛选出2018年3月入职的员工,这时怎么办呢?一个个修改肯定很麻烦,其实有个小功能可以解决这个问题。往下看好了:

    首先,在菜单栏选择开始-数据-筛选,然后表格内的数据则可进行筛选,但是可以在入职日期的下拉菜单中看到,数据并没有按照年、月、日划分的维度,这时就需要先把日期变成标准的日期格式。

    接着,选择入职日期栏,然后进行整体替换,将日期中的“.”全部替换成标准的日期格式比如“-”或者“/”。这时可以看到替换结果,所有日期都变成了标准的日期格式。

    然后,再点击入职日期的下拉按钮,可以看到日期按照年、月进行了划分,点击数字前面的“+”和“-”可以展开、折叠数据。

    最后,在下拉菜单中勾选2018、三月,就可以看到筛选结果了。

    除了以上这种方法,还有一个更简单的就是用表单大师创建在线电子表单。这样创建的时候就按照年、月、日进行录入。就不会存在格式错误的问题,查询起来同样很简单,开启公开查询按钮,勾选按日期查询就可以啦。不信登录网站去试试吧~

  • ?

    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-15个日期与时间函数的用法解析

    汪艺眉

    展开

    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函数—返回某日期对应的年份。

  • ?

    Excel中怎么计算出某个日期是星期几

    蒋南亚

    展开

    如果想知道某个日期是星期几,可以使用Excel中的WEEKDAY 函数。

    WEEKDAY 函数介绍:

    WEEKDAY 函数的作用是返回某个日期为星期几。

    该函数的语法为:WEEKDAY(serial_number,[return_type])

    ●Serial_number (必需)。一个序列号,代表要查找的日期。可以引用日期格式的单元格中的内容。如果要直接输入日期,应使用 DATE 、TODAY等日期函数或者将日期作为其他公式的结果输入(例如:使用函数 DATE(2008,1,1) 输入 2008 年 1 月 1 日)。注意如果日期以文本形式输入会出现错误。

    ●Return_type 可选。用于确定WEEKDAY 函数返回值类型的数字。下图是Return_type 采用不同数字时WEEKDAY 函数所返回的值。(感觉将Return_type设置成2更加直观,即WEEKDAY 返回值中用数字1代表星期一,数字7代表星期天)

    WEEKDAY 函数用法举例:

    例如要用WEEKDAY 函数查询2008年1月1日是星期几:

    ●先在Excel中输入要查询的日期,本例为“2008年1月1日”,注意不要输入汉字,可以输入成“2008-1-1”或者“2008/1/1”。

    ●点击选中要显示所查询日期是星期几的单元格。

    ●在编辑栏中输入=WEEKDAY(。

    ●用鼠标点击要查询日期所在的单元格。

    ●点击后,编辑栏中就会自动输入要查询日期所在的单元格名称,本例为“B3”。

    ●再在编辑栏处输入一个英文的逗号和数字2及右侧的小括号,即完成输入“=WEEKDAY(B3,2)”。其中的“2”是WEEKDAY函数的参数,表示用数字1代表星期一,数字7代表星期天。也可以根据需要按上述介绍输入其他参数。

    ●在编辑栏中输入好函数后,鼠标点击编辑栏左侧的对号或者按键盘的回车键。

    ●这时,所选单元格中就会用小写数字显示出要查询的日期是星期几了。本例为“2”,即为星期二。如果是星期天,则显示为小写数字“7”。(如果之前输入的是其他return_type参数,则各数字所代表的星期数值会不同,详见上述WEEKDAY 函数介绍)

    ●通过查询日历可以看出本例中的“2008年1月1日”的确为星期二。

    ●要注意的是,要想让Excel用数字1代表星期一,数字7代表星期天,WEEKDAY函数中最后的Return_type参数必须是“2”,如果省略该参数或者输入数字“1”,则Excel会用数字0代表星期一,数字6代表星期天,这时本例的星期二就变成用数字3来代表了,这样感觉不太直观。在非特殊的情况下最好不要这样设置。

    ●另外还要注意要查询日期所在的单元格必须为日期格式。在输入日期时将年月日之间用“/”或者“-”隔开(如:“2008-1-1”或者“2008/1/1”),再按键盘的回车键,通常Excel会自动把该单元格设置成日期格式。

  • ?

    Office小技巧-Excel表格中五种常用的日期与时间函数

    如之

    展开

    日期与时间函数是指在公式中用来分析和处理日期值和时间值的函数。小编今天和大家一起学习五种常用的日期与时间函数。

    一:DATE函数

    函数功能:返回代表特定日期的系列数。如果是要计算某年月日的话,比如是月份大于12的月数,或者日期大于31,那么系统会自动累加上去。

    语法格式: DATE(year,month,day),分别对应年月日。

    二:NOW函数

    函数功能:返回当前日期和时间所对应的系列数。表格时间随着系统自动变化,使用快捷键插入的则不会

    语法格式:NOW( )。

    三:DAY函数

    函数功能:返回以系列数表示的某日期的天数,用整数 1 到 31 表示。

    语法格式:DAY(serial_number),表示要查找的日期天数。

    四:MONTH函数

    函数功能:返回以系列数表示的日期中的月份。月份是介于 1(一月)和 12(十二月)之间的整数。

    语法格式:MONTH(serial_number),表示一个日期值,包括要查找的月份的日期.

    五:WEEKDAY函数

    函数功能:返回某日期为星期几。默认情况下,其值为 1(星期天)到 7(星期六)之间的整数。

    语法格式:WEEKDAY(serial_number,return_type),参数serial_number是要返回某日期数的日期,return_type为确定返回值类型,t从1到7还是从0到6,以及从星期几开始计数,如省略则返值为1到7,且从星期日起计。

    以上。

    希望大家在阅读之余,多加练习办公软件Office的使用,提高我们的工作效率,成为职场高效率的一员。我将在每周都进行内容更新,大家一起学习,共同进步。

    Office小技巧-常用的三种Excel数据编辑技巧

    Office小技巧-Excel中多种条件也可以同时筛选

    Office小技巧=详细解说EXCEL中选择粘贴功能大全

  • ?

    职场人都会的5个Excel日期小常识

    粱妙菡

    展开

    日期看似很简单,实际上很多职场人都不懂,经常有职场人在群内问相关的问题。下面挑选5个小案例进行说明。

    1.将日期和时间合并起来。

    =A2+B2

    2.将年月和日期合并起来,并转换成标准日期。

    =--SUBSTITUTE(A2&"."&B2,".","-")

    3.将库存日期店铺合并起来,直接用&连接起来出错。

    日期就是数值,所以在合并的时候需要借助TEXT函数进行转换。

    4.国庆倒计时。

    在单元格中输入2017-10-1代表日期,在公式中输入这个代表做减法运算,也就是得到2006,导致运算出错。

    标准的日期可以用DATE(2017,10,1)表示。

    =DATE(2017,10,1)-TODAY()

    5.获取员工转正日期,试用期3个月。

    =EDATE(A2,3)

    EDATE函数是获取开始日期之前或者之后多少个月,之后3个月,就用3表示,如果是1年,就用12。如果是日期的5个月之前,也就是-5。

  • ?

    9个Excel日期小常识!

    安天德

    展开

    日期看似很简单,实际上很多读者都不懂,经常有读者在群内问相关的问题。下面卢子挑选9个小案例进行说明。

    1.每次打开Excel,原来的数字格式总会变成日期格式,怎么回事?

    输入4位数的年份2012,就变成了日期格式。

    打开自定义单元格格式,将这种特殊格式的格式删除掉。

    [$-en-US]mmm-yy;@

    当然还有可能是由下面这种格式[$-F400]、[$-F800]导致,点击删除即可。

    也就是说,当遇到这种情况,就打开自定义单元格格式,将那些看起来很奇怪的自定义格式代码删除。

    2.单元格是数字格式,编辑栏却是日期格式,不管是直接设置单元格格式或者分列,都没有任何作用,怎么回事?

    这是因为点击了显示公式的原因,再重新点一下就恢复正常,快捷键Ctrl+~。

    正常效果。

    3.单元格为日期,怎么变成#####,什么原因?

    这是由于列宽太小导致,将列宽拉宽点就恢复正常。

    4.将日期和时间合并起来。

    =A2+B2

    通过设置单元格格式可以知道,日期其实就是整数,时间就是小数,合并起来就是整数+小数。

    整数1代表的日期就是1900-1-1,2就是1900-1-2,依次类推。12小时就是半天,也就是0.5。

    如果合并后显示的是常规格式,可通过自定义单元格格式为:yyyy-m-d h:mm

    5.将原始数据转换成年4位,月、日、时、分、秒都是2位的效果。

    设置公式为:

    =TEXT(A2,"e-mm-dd hh:mm:ss")

    e代表4位数的年,等同于yyyy,d就代表1位日,dd就代表2位,其他同理。

    6.将年月和日期合并起来,并转换成标准日期。

    =--SUBSTITUTE(A2&"."&B2,".","-")

    用.作为分隔符号的并不是标准日期,需要再替换成以-作为分隔符号,再借助--转换成数值,最后设置单元格格式为日期格式。

    7.将库存日期店铺合并起来,直接用&连接起来出错。

    日期就是数值,所以在合并的时候需要借助TEXT函数进行转换。

    8.除夕倒计时。

    这里的#######可不是列宽太小导致。

    在单元格中输入2018-2-15代表日期,在公式中输入是做减法运算,导致运算出错。

    标准的日期可以用DATE(2018,2,15)表示。

    =DATE(2018,2,15)-TODAY()

    当然日期用"2018-2-15"表示也可以,输入公式后,将单元格格式设置为常规。

    ="2018-2-15"-TODAY()

    9.获取员工转正日期,试用期3个月。

    =EDATE(A2,3)

    EDATE函数是获取开始日期之前或者之后多少个月,之后3个月,就用3表示,如果是1年,就用12。如果是日期的5个月之前,也就是-5。

  • ?

    常用的Excel日期函数

    里瓦德塞利亚

    展开

    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中的各种时间差、日期差,该如何计算

    Nicaro

    展开

    有些朋友被Excel中的时间差计算问题所困扰,所以今天整理了一下各种时间差、日期差的计算方法以及注意事项。

    第一、计算“几小时几分钟几秒”的时间差

    最简单的方法,就是用较大的时间减去减小的时间。所谓时间较大者指的是一天中更靠后的时间。

    公式:=B2-B1或=TEXT(B2-B1,"h:mm:ss")

    注意:原始的时间和计算结果单元格都必须设置成时间格式,如“h:mm:ss”。

    如果你没有将结果单元格设置成时间格式,会得到一个数字(如0.0957);而如果你用较小的时间减去较大的时间,那就会得到一堆的“#”。

    这么说,在计算时间之前,要用眼睛判断哪个大哪个小,然后再计算咯?

    当然不是,我们可以把公式变成下面这两种样子:

    公式1:=B2-B1+IF(B2B2,TEXT(B1-B2,"-h:mm:ss"),TEXT(B2-B1,"+h:mm:ss"))

    咦,这两个公式的计算结果有时候不一样呢?

    但这两个公式都是正确的。当B2的时间数值上比B1小时,如果你用第二个公式,则表示这两个时间属于同一天,如果你用第一个公式,则表示B2的时间是第二天的时间,两者的计算结果相差24小时。

    第二、计算小时差、分钟差和秒数差

    在计算考勤时间时,我们不想得到“几天几小时几分钟几秒”的时间差,希望将时间差转换成小时、分钟或秒。这就可以使用上图的公式。

    注意,原始的时间还是要设置成时间格式,时间差单元格设置成数值格式。用这种方法计算,会默认两个时间属于同一天。

    公式中的1440表示“24小时*60分钟”,86400表示“24小时*60分钟*60秒”。

    计算日期差

    计算日期差,可以使用函数“DATEDIF(开始日期,结束日期、"Y/M/D")”,“Y”表示计算相差几年、“M”表示计算相差几月,“D”表示计算相差几天。

    再次提醒一下,在计算时间差、日期差之前,一定要确保单元格的格式设置正确了。否则,将得到不正确的计算结果。

    学习,为了更好的生活。欢迎点赞、评论、关注和点击头像。

  • ?

    这样的Excel日期计算思路,23.6%的人没想到

    小步调

    展开

    计算今年是否为闰年

    公式

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

    思路解析:

    1、在Excel中如果输入“月/日”形式的日期,会默认按当前年份处理。

    2、如果当前年份中没有2月29日,输入"2-29"就会作为文本处理。

    3、如果当前年份没有2月29日,"2-29"前面加上负号,就相当于在文本前加负号,会返回错误值#VALUE!。

    4、再用COUNT函数判断-"2-29"是数值还是错误值,如果是错误值,当然就不是闰年了。

    计算今年有几天

    ="12-31"-"1-1"+1

    前面说过,在Excel中如果输入“月/日”形式的日期,会默认按当前年份处理。

    "12-31"-"1-1"就是用当前年的12月31日减去当前年的1月1日。

    再加上一天,就是全年的天数了。

    有朋友说,公式写成这样呢:

    ="2017-12-31"-"2016-12-31"

    这样的话,公式有保质期,放到明年就不能用了,哈哈。

    图文制作:祝洪忠

    ExcelHome,微软技术社区联盟成员

excel判断日期大小

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

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

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP