首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Excel公式技巧34: 由公式中日期的处理引发的探索

学习Excel技术,关注微信公众号: excelperfect 我们知道,在Excel中,日期是以序号数字来存储的,虽然你在工作表中看到的是“2020-3-31”,而Excel中存储的实际上是“43921.00...”,整数部分是日期的序号,小数部分是当天时间的序号。...这样方便了日期的表示和存储,但也同样带来了一些问题,例如我们以为是“2020-3-31”,因此会将数据直接与之比较,导致错误的结果。本文举一个案例来讲解公式中日期的处理方式。...等价于公式: =AVERAGE(B2:B7) 5. 我们注意到,上面的公式中我们没有提供IF函数的参数value_if_false的值,这是有原因的。...其实,Excel 2007及以后的版本中引入了一个函数AVERAGEIFS,可以很好地解决上述问题,其公式为: =AVERAGEIFS(B2:B20,A2:A20,DATE(2020,3,31)) 或者

1.9K30

Excel公式练习85:从句子中提取日期

本次的练习是:在一组单元格中,有些数据含有日期,我们想将这些日期提取出来。如下图1所示,将列A单元格数据中的日期提取出来并放置在列B中。 ? 如何编写公式? 先不看下面的答案,自己想一想。...解决方案 方法1 在单元格B2中输入下面的公式: =IFERROR(MID(A2,FIND("/",A2)-2,10),"") 然后,下拉至对应的列A中的数据末尾。...此公式非常简单,使用FIND函数查找单元格数据中“/”出现的位置,减去2则是日期在数据中开始的位置,10是日期的长度,然后使用MID函数提取找到的日期。...方法2 在单元格B2中输入下面的公式: =IFERROR(MID(A2,SEARCH("??/??/????",A2),10),"") 然后,下拉至对应的列A中的数据末尾。...此公式的妙处在于,使用SEARCH函数在单元格中搜索符合指定格式的文本所在的起始位置。然后,使用MID函数提取找到的日期。 小结 分析清楚需求,熟练使用函数,顺利解决问题。

1.8K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Excel公式练习93:计算1900年前的日期

    引言:本文的练习整理自chandoo.org。多一些练习,想想自己怎么解决问题,看看别人又是怎解决的,能够快速提高Excel公式编写水平。 本次的练习是:给1900年前的日期加上或者减去一定的天数。...示例数据如下图1所示,列A中的日期,加上或减去列B中的天数,返回正确的日期。 图1 假设所有的日期都使用mm/dd/yyyy格式,并且都大于0年。...解决方案 公式1: 在单元格C2中输入公式: =REPLACE(TEXT(DATE(MID(A2,7,4)+2000,MID(A2,1,2)+0,MID(A2,4,2)+0)+B2,"MM/DD/YYYY...公式中: DATE(MID(A2,7,4)+2000,MID(A2,1,2)+0,MID(A2,4,2)+0) 得到年份、月份和日,年份加上2000以满足Excel表示日期的要求。...: REPLACE("02/05/3885",7,4,1885) 返回: 02/05/1885 公式2: 在单元格C2中输入数组公式: =TEXT(MONTH(DATE(RIGHT(A2,4)+1200

    1.6K20

    Excel公式练习70: 求最近一次活动的日期

    本次的练习是:如何使用公式求得最近的日期?例如,下图1所示,x表示该日期开展了一次活动,在列G中求出对应的最近一次活动日期。 ? 图1 先不看答案,自已动手试一试。...解决方案 公式1:使用LOOKUP函数 =LOOKUP("y",C4:F4,F3) 由于示例中采用“x”表示开展活动对应的日期,使用其随后的字母“y”来查找,显示在对应区域找不到该值,这样LOOKUP函数会返回与查找值最接近的值...公式2:使用MAX/SUMPRODUCT函数 =SUMPRODUCT(MAX((C3:F3)*(C4:F4="x"))) 由于日期在Excel中是以数字形式存储的,因此可以将它们与TRUE/FALSE值组成的数组相乘...{41091,41092,0,0})) 得到: 41092 即该日期对应的序数,设置适当的格式后在Excel中显示相应的日期。...我们使用了SUMPRODUCT函数强制进行数组运算,如果不使用SUMPRODUCT函数,则在输入公式: =MAX((C3:F3)*(C4:F4="x")) 需按Ctrl+Shift+Enter组合键。

    2K10

    Excel公式练习71: 求最近一次活动的日期(续)

    下图1所示,求单元格F12中指定名称所对应的最新日期?在单元格区域B12:C20中是要查找的数据。 ? 如何在单元格F13中编写公式? 先不看答案,自已动手试一试。...解决方案 公式1:使用LOOKUP函数 =LOOKUP(2,1/(B13:B20=F12),C13:C20) 很显示,使用LOOKUP公式不可取,我们必须构造一个供查找的数组,即公式中的: 1/(B13...公式2:使用MAX/SUMPRODUCT函数 =SUMPRODUCT(MAX((B13:B20=F12)*(C13:C20))) 这个公式由于日期在Excel中是以数字形式存储的,因此可以将它们与TRUE...,设置适当的格式后在Excel中显示相应的日期。...我们使用了SUMPRODUCT函数强制进行数组运算,如果不使用SUMPRODUCT函数,则在输入公式: =MAX((B13:B20=F12)*(C13:C20)) 需按Ctrl+Shift+Enter组合键

    2.2K20

    Excel小技巧47: 输入日期和时间的2个方法

    在工作表中输入日期和时间是经常要进行的操作,如果要输入当前的日期和时间,我们可以使用快捷键,也可以使用Excel内置的函数。...方法1:使用快捷键输入日期和时间 选取需要输入日期和时间的单元格,按Ctrl+;快捷键,此时Excel会在单元格中输入当前日期。...保持该单元格处于编辑状态,按一次空格键,再按Ctrl+Shift+;快捷键,Excel会输入当前时间。如下图1所示。 ? 图1 注意,使用这种方法输入日期和时间后,并不会自动更新。...方法2:使用NOW函数/TODAY函数 上面的方法1在输入日期和时间时使用了两个快捷键,如果想一次输入日期和时间,可以使用NOW函数。如果只想输入日期,可以使用TODAY函数。如下图2所示。 ?...图2 注意,使用这种方法输入的日期和时间是动态的,会随着工作表的更新而自动更新。 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

    84030

    Excel公式技巧24: Excel公式中的降维技术

    这样,Excel返回#N/A作为结果数组中的第三个元素。 实际上,Excel为了解决传递两个大小不同的数组的问题,重新定义了两个中较小的一个,使其匹配较大的数组。...;"M","o",#N/A;"A","i",#N/A;"A","i",#N/A} 可参考《Excel公式技巧06: COUNTIFS函数如何处理以数组方式提供的条件》中讲解的对数组的解析的内容。...,传递给INDEX函数的数组(用于参数row_num和参数column_num的数组)都是相同的向量类型(均为列向量),从而确保了由INDEX产生的数组也是这种向量类型。...根据其定义,列向量当然是一维的。这里使用的技术请参阅《Excel公式技巧03:INDEX函数,给公式提供数组》、《Excel公式练习44:从多列中返回唯一且按字母顺序排列的列表》。...可以看出,INDEX结构具有不可否认的优势,不仅可以将其用于重新定义工作表区域的维度,还可以重新定义公式中某些其他子函数产生的数组的维度。

    2K22

    Excel实战技巧101:使用条件格式确保输入正确的日期

    前言:本文学习整理自chandoo.org,这是一个非常好的Excel学习网站,我在上面学到了很多Excel知识和技巧。 在我们使用Excel工作表记录数据时,很多时候,都会记录输入的日期。...图1 如果你输入的不是日期或者是错误的日期表达方式,输入字体就会变为红色且在右侧显示一个红叉图标。 假设用户要在单元格C3中输入日期。下面是实现方法。 1. 选择单元格C3。 2....单击功能区“开始”选项卡“样式”组中的“条件格式——新建规则”。 3. 在“新建格式规则”对话框中,选择“使用公式确定要设置格式的单元格”。 4. 输入公式:=ISERROR(DAY($C$3))。...如果返回错误,则表示日期无效。这里,使用ISERROR()检查错误状态。 注意,由于Excel中的日期实际上是数字,因此当你在单元格中输入数字时,示例中设置的条件格式不会触发错误。...更进一步,如果要在整列添加条件格式,例如列C且输入开始于单元格C3,那么首先选择列C中将要包含日期的所有单元格,设置条件格式的公式为:=ISERROR(DAY($C3)),其他操作与上述相同。

    2.8K10

    Excel公式技巧:Excel公式中的数字9.99999999E+307

    这个数字:9.9999999E+307,我们经常会在公式中用得上它。这是一个神奇的数字,在查找数值时能够发挥很大的作用。本文介绍的就是这个数字的使用技巧。...9.9999999E+307是Excel能够识别的最大数字,它通常与LOOKUP函数或MATCH函数结合使用,以查找列/行中的最后一个数字条目,或分别查找行/列中数值的最后一行行号/列号。...在本示例中,LOOKUP函数查找最后一个小于或等于查找值9.9999999E+307的条目,类似的规则或MATCH函数返回行号。...要获取数字条目的最后一行,使用公式: =MATCH(9.99999E+307,A:A) 或者,对于行,使用公式: =MATCH(9.99999E+307,1:1) 有兴趣的朋友,可以仔细研究,在需要时可以将此技术进行灵活运用...,一定会取得不错的效果。

    1K30

    带公式的excel用pandas读出来的都是空值和0怎么办?——补充说明_日期不是日期

    之所以另 起一篇,是因为 ①频繁修改需要审核比较麻烦 ②这个问题是数据源头的错误,不常碰到,而且可控的,楼主这里是因为积攒了大批数据,去改源头之前的也改不了,还是要手动,比较麻烦 先说问题,读取excel...时候,日期不是日期格式是数字或常规,显示的是四个数字,python读取出来的也是数字,写入数据库的也是数字而不是日期 附上读取带公式的excel的正文链接: https://blog.csdn.net.../mm/dd"#excel VBA语法 #添加到循环之前,2行3列对应C2是数字格式的日期 处理这个问题,楼主本人电脑是可以跑通的完全没问题,注意打印出来date,看下格式,跟平常见的不是太一样!...[1,0][:10] 第一次运行时直接iloc出来了,再第二遍时候就又不行了,所以考虑①excel里面转,②dataframe里转 方法①没成功,有想到办法的可以评论里写出来, 再贴一下定义读取excel...的函数代码 附上读取带公式的excel的正文链接: https://blog.csdn.net/qq_35866846/article/details/102672342

    1.7K20

    Excel公式技巧15: 探讨强制返回数组的公式技术

    函数仅仅处理了数组中的第一个元素,就像我们将其作为非数组公式输入一样。...幸运的是,Excel为提供了一个与N函数具有相似功能的T函数。与N函数一样,T函数同样具有强制返回数组的特性。N函数用于数字,T函数用于文本值。...这种包含OFFSET函数的公式技术可用于多个函数,这些函数最初拒绝数组输入。在第三个示例中,使用了DOLLARDE函数,公式如下: =SUM(DOLLARDE(A1:A5,2)) 结果为#VALUE!...在《Excel公式技巧03:INDEX函数,给公式提供数组》中,讲解了从INDEX函数强制返回数组的技术,在这里也可以使用。...完全不是我们期望的数组公式,也不确定CELL函数拒绝接受生成数组输入的原因。不知道有没有人知道?

    2K10

    Excel公式技巧32: 处理公式中的布尔值

    在我们编写公式时,特别是编写数组公式时,往往会生成由TRUE/FALSE值组成的中间数组。...有些Excel函数可以忽略这些布尔值,例如SUM函数,但是很多函数不能处理这些布尔值,如果将它们传递给这些函数,就会导致错误。因此,在将这些布尔值传递给函数继续处理时,需要将它们转换成数字。...在Excel中,TRUE值等于1,FALSE值等于0,那么如何将TRUE/FALSE值转换成1/0呢?最常用的方法是使用数学运算。...使用双减号: --{TRUE,FALSE}=(-1)*(-1)*{TRUE,FALSE}=1*{TRUE,FALSE}={1,0} 例如,在《Excel公式练习63:求数值中的各个数字之和》中,我们可以使用下面的公式...有时候,公式本身就会与生成的数字相乘,这样也会将TRUE/FALSE进行相应的数字转换。至于如何使用,具体情况灵活使用相应的方法。

    2.8K10

    Excel揭秘21:Excel是如何控制公式计算的

    通常,Excel默认的计算模式为“自动”计算,这可以从下图1所示的功能区“公式”选项卡“计算”组中的计算选项看出来。 ?...图2 这样,我们在Excel工作表单元格中修改值后,使用该值的公式结果会自动更新,不需要我们进行任何其他操作,这是我们在操作Excel工作表时常见的事情。...Excel在计算工作表时,遵循下列原则: 1.在修改单元格时,例如输入或编辑数据或公式时,Excel会根据新输入的数据或者编辑过的数据立即进行公式计算。...如果工作表中包含有成百上千个复杂公式,那么会导致Excel的计算速度变得缓慢,此时我们希望控制Excel何时计算公式。...可以将Excel的计算选项设置成“手动重算”,如上图2所示,或者直接在功能区选项卡“公式”的“计算”组中选取“计算选项——手动”,如上图1所示。让我们能够自已控制Excel何时来计算公式。

    1.5K10

    精通Excel数组公式009:提供多个值的数组公式

    因为要生成5个数值项(即从1至5的数字),所以首先选择5个单元格,即单元格区域A2:A6。 2. 在活动单元格(A2)中输入公式: =ROW(A2:A6)-ROW(A2)+1 3....公式输入完后按Ctrl+Shift+Enter键。 这个数组生成5个值,并分别在5个单元格中输入这些值。这类数组公式有下列特点: 1. 不能对数组公式所在的区域进行部分修改。...图8 示例:求日期所在的季度 如下图9所示,通过数组公式一次求出对应日期所在的季度。 ? 图9 公式运行原理如下图10所示。 ?...图10 《Ctrl+Shift+Enter:MasteringExcel Array Formulas》学习笔记 完美Excel 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。...欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。 完美Excel社群2020.9.2动态 #VBA# 增强的CELL函数和INFO函数

    5.2K50

    精通Excel数组公式023:使用数组公式的条件格式

    excelperfect 条件格式是有趣的,特别是使用公式并链接条件到单元格中时。下面是使用公式的条件格式的一些说明: 1.条件格式意味着如果条件满足应会应用设定的格式。...4.评估为TRUE或FALSE的逻辑公式可以用于创建条件格式。 5.条件格式可以使用非数组公式和数组公式。 6.条件格式是易失性的:经常重新计算,减慢整个工作表的计算时间。...7.使用公式创建条件格式的步骤: (1)选择单元格区域。 (2)打开“条件格式规则管理器”对话框。...(按Alt+N键,或者单击“新建规则”按钮) (4)从“选择规则类型”列表中选取“使用公式确定要设置格式的单元格”。 (5)单击“为符合此公式的值设置格式”框。 (6)输入公式。...单元格D18中的数组公式计算得到指定的时间并作为条件格式的辅助单元格。 ? 图2 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

    2.9K30

    【Excel】用公式提取Excel单元格中的汉字

    所以总结了一下提取汉字的几种情况。 一、用公式提取Excel单元格中的汉字 对于一个混杂各种字母、数字及其他字符和汉字的文本字符串,要提取其中的汉字,在Excel中通常可用下面的公式。...在B2中输入下面的公式: =LEFT(A2,LENB(A2)-LEN(A2)) 就会返回字符串中开头的几个汉字。...例如图中A10:A12区域中的字符串,在B10中输入数组公式: =MID(A10,MATCH(2,LENB(MID(A10,ROW(INDIRECT("1:"&LEN(A10))),1)),),LENB...(A10)-LEN(A10)) 公式输入完毕,按Ctrl+Shift+Enter结束。...返回Excel工作表界面,在B14单元格中输入公式: =提取汉字(A14) 即可取得A14单元格字符串中的所有汉字。 二、用公式提取引号(某2个相同字符)之间的内容 ?

    8.3K61

    精通Excel数组公式002:谈谈公式最基本的那些事儿

    学习Excel技术,关注微信公众号: excelperfect 任何知识和技能都有最基本的东西,熟知这些,是学习的基础,也会使学习事半功倍。下面,我们就来看看Excel公式的那些基础知识。...Excel中的数学运算符如下表。 ? 图1 比较运算符 在公式中,使用比较运算符执行比较运算。Excel中的比较运算符如下表。 ?...图2 公式元素的优先级 在创建具有许多元素的大公式时,理解Excel如何评估或计算公式是特别重要的。下面列出了Excel评估或计算公式的顺序。 ?...日期是一个典型的例子。 数据对齐方式 理解Excel默认的对齐方式对于追踪错误以及理解复杂公式如何工作是非常有帮助的。下面列出了数据默认的对齐方式: 1. 文本是左对齐。 2. 数字是右对齐。 3....Excel黄金法则 如果公式输入的数据可能变化,将其放置到单元格中并使用单元格引用来引用该单元格。如果公式输入的数据不变化,则将其硬编码到公式中。

    1K20
    领券