标签:公式练习 在使用Excel时,经常会遇到根据多个条件求相应的和的问题。 示例数据如下图1所示。工作表中有两个表,一个是活动的全部数据,另一个列出了其中暂停活动的列表。...我首先想到使用经典的MATCH/INDEX函数组合的数组公式,但没有成功,接着转向使用矩阵公式。...第2种解法,更简单一些的公式,不过仍然是数组公式。...经过上述公式的编写后,对问题的理解更深入了,可以得出第6种解法。...注:在知识星球完美Excel社群可以下载本文配套示例工作簿。
这个数字:9.9999999E+307,我们经常会在公式中用得上它。这是一个神奇的数字,在查找数值时能够发挥很大的作用。本文介绍的就是这个数字的使用技巧。...9.9999999E+307是Excel能够识别的最大数字,它通常与LOOKUP函数或MATCH函数结合使用,以查找列/行中的最后一个数字条目,或分别查找行/列中数值的最后一行行号/列号。...因此,要查找列中的最后一个数字条目,可以使用: =LOOKUP(9.9999999E+307,A:A) 或者从行中返回最后一个数字条目: =LOOKUP(9.9999999E+307,1:1) 类似地,...要获取数字条目的最后一行,使用公式: =MATCH(9.99999E+307,A:A) 或者,对于行,使用公式: =MATCH(9.99999E+307,1:1) 有兴趣的朋友,可以仔细研究,在需要时可以将此技术进行灵活运用...,一定会取得不错的效果。
标签:Excel公式,SUMPRODUCT函数 基于列中的条件求和通常使用SUMIF函数或者SUMIFS函数,特别是涉及到多条件求和时。然而,随着条件的增多,公式将会变得很长,难以理解。...而使用SUMPRODUCT函数,可以判断同一列中的多个条件且公式简洁。 如下图1所示的示例。...也可以使用下面更简洁的公式: =SUMPRODUCT(($A$2:$A$12="东区")*(($B$2:$B$12={"超市1","超市2"}))*($C$2:$C$12)) 公式中,使用了花括号,允许在其中放置多个条件...,因此,如果需要满足的条件更多的话,就可以通过逗号分隔符将它们放置在花括号中,公式更简洁。...小结 在花括号中放置判断条件,从而使公式更简洁,是本文讲解的重点技巧。
引言:本文的练习整理自chandoo.org。多一些练习,想想自己会怎么解决这个问题,看看别人又是怎样解决的,这样能够快速提高Excel公式编写水平。 本次的练习是:示例数据如下图1所示。...图1 现在,想根据列A中的数据对列B中的值汇总。例如,对于列A中的“A”来说,在列B中对应的值是:1、13、14、15、16、17、18,其和为94。...要求只能使用公式,不能使用VBA,仅能使用上述两个命名区域名称,不能使用填充功能填充空单元格。 请写下你的公式。 解决方案 公式1:数组公式。...5:数组公式。...…… 公式并没有给出详细的解析,有兴趣的朋友可以参照前面推送的有关分析公式的文章对这些公式进行解析,相信对理解Excel函数,编写公式解决问题会有很大的帮助。
在练习的过程中,认真思考,不断尝试,以此来磨练自己的公式与函数应用技能,也让研究Excel的大脑时刻保持着良好的状态。...同时,想想自己怎么解决这个问题,看看别人又是怎样解决的,从而快速提高Excel公式应用水平。 本次的练习是:求出列A和列B中每一行最小值相加的和。...请写下你的公式。...公式2:数组公式。 =SUM(IF(B1:B10<A1:A10,B1:B10,A1:A10)) 公式中,IF函数的结果为数组:{4;8;8;10;9;5;2;7;3;2}。...:B10)*10^6+RANK.AVG(A1:B10,A1:B10),(ROW(A1:B10)-MIN(ROW(A1:B10)))*COLUMNS(A1:B10)+1),10^6))) 这是一个更灵活的公式
现在,想要求头3个出现的数字之和,也就是说,求单元格A5中的10000、A14中的2000、A20中的1000这3个数字之和。 ?...图1 我们一眼就可以看出这3个数字是该列中首先出现的前3个数字,但Excel不知道。如何使用公式来求得这3个数字之和呢?可以使用下面的数组公式实现。...在单元格D2中输入下面的数组公式: =SUM(SUM(OFFSET(A1,SMALL(IF(ISNUMBER(A2:A100),ROW(A2:A100)),{1,2,3})-1,))) 结果如下图2所示...图2 上述公式可以转换为: =SUM(SUM(OFFSET(A1,{5,14,20}-1,))) 其中, SUM(OFFSET(A1,SMALL(IF(ISNUMBER(A2:A100),ROW(A2:...其实,尽可能让数据符合Excel的特点,合理布局,往往会给数据分析带来便利,而不必像上面那样,费尽心力编写冗长且难以理解的数组公式了。
在练习的过程中,认真思考,不断尝试,以此来磨练自己的公式与函数应用技能,也让研究Excel的大脑时刻保持着良好的状态。...同时,想想自己怎么解决这个问题,看看别人又是怎样解决的,从而快速提高Excel公式应用水平。...在《Excel公式练习:查找每行中的最小值并求和》中,我们提供的示例数据每行只有2列,如果数据有3列,又如何求每行最小值之和呢? 本次的练习是:如下图1所示,求每行最小值之和。...解决方案 公式1:《Excel公式练习:查找每行中的最小值并求和》中的公式5可以应用到3列: =SUM(LARGE(A1:C10,MOD(LARGE(ROW(A1:C10)*10^6+RANK(A1:C10...2.将其与ROW函数结合,乘以足够大的数字,使RANK值即使在组合后也不会改变。使用ROW函数可自动确保结果值按行分组,从而更容易提取行最大值。
公式中的“Data”为定义的名称: 名称:Data 引用位置:=A2:A9 1....可以知道,其作用是跳过已经提取的数据。 注意,公式开始于第2行的单元格B2,设置了对其上方单元格区域的引用。 3....得到的结果数组为:{1;2;3;4;3;4;3;4}。这样,就将数据字符串转换成了数字,便于Excel进行处理。 4....MODE(IF(ISNA(MATCH(Data,B$1:B1,0)),MATCH(Data,Data,0)*{1,1})) MODE函数返回传递给它的列表中出现次数最多的数字。...多使用“公式求值”和F9键,仔细领会这个公式的运行原理。
标签:Excel公式,SUBSTITUTE函数 有时候,可能是由于输入的原因,也可能是由于从网上直接下载的数据,数据中的字符串中夹杂着一些数字,而我们又不想要这些数字,因此,需要从字符串中删除这些数字。...例如,字符串“My2017Excel2022”删除其中的数字后,成为“MyExcel”。 使用什么公式能够达到我们的目的呢?...首先很自然想到的是SUBSTITUE函数,可以用新的字符来替换字符串中的原字符。...,但基本原理很简单,就是使用SUBSTITUTE函数依次替换字符串中的数字1、2、3、4、5、6、7、8、9、0。...由于有十个数字,因此使用了SUBSTITUTE函数10次。 幸好只有10个数字,只需替换操作10次,如果更多的话,公式岂不很长。不知道有没有更简单的通用公式,期待朋友们一起探讨。
导语:本文的案例在前面的文章中有过介绍,这里给出两个解决方案,进一步巩固所学的知识。 本次的练习是:在单元格中是一个数,使用公式求组成这个数的单个数字相加的和,如下图1所示。 ?...公式解析 公式中: ROW(INDIRECT("1:" & LEN(B3))) 用来生成连续的整数,其最大值为单元格B3中数值的长度,即: {1;2;3;4;5;6;7;8;9} 将此数组传递给MID函数...将上面的数组与1相乘转换为数字: 1*(MID(B3,ROW(INDIRECT("1:" &LEN(B3))),1)) 即: 1*{"1";"2";"3";"4";"5";"6";"7";"8";"9"...} 得到数组: {1;2;3;4;5;6;7;8;9} 传递给SUM函数求和: =SUM({1;2;3;4;5;6;7;8;9}) 得到结果: 45 另一个公式 还可以使用SUMPRODUCT函数来解决...得到: {1;2;3;4;5;6;7;8;9} 将其传递给SUMPRODUCT函数: =SUMPRODUCT({1;2;3;4;5;6;7;8;9}) 对于单个数组,SUMPRODUCT函数直接对其中的元素求和
幸好,输入的数据还是很有规律的,即都是数字加上物品名称,因此还是可以很方便地使用公式来得到结果。...中输入数组公式: =SUM(IF(SUBSTITUTE(B2:B19,E2,"")B2:B19,SUBSTITUTE(B2:B19,E2,"")+0))& " " & E2 在单元格F3中输入数组公式...图2 注意,由于是数组公式,应该按下Ctrl+Shift+Enter键才算完成了公式,Excel会在公式两端自动加上花括号。...在公式中,我们人为地将数据中的物品名称替换为空,然后与原数据进行对比,那么那些不相等的数据自然就是替换的物品的领用数值。...对于SUBSTITUTE(B2:B19,D2,"")+0中的+0,是为了将替换后的文本转换为数字,否则将得不到正确的结果。
导语:在《Excel公式技巧44:对文本进行排序》中,我们使用COUNTIF函数并结合SMALL/MATCH/INDEX函数对一系列文本进行排序,无论这些文本中是否存在重复值。...在《Excel公式技巧45:按出现的频率依次提取列表中的数据》中,我们使用MATCH/ISNA/IF/MODE/INDEX函数组合提取一系列文本中不重复的数据并按出现的频率且按原数据顺序来放置数据。...COUNTIF(B$1:B1,Data) 在B1:B1中依次查找名称Data代表的单元格区域中的数据,返回一个由数字组成的数组。...,如果有多个数字出现的次数最多且相同,则将其全部返回。...因此,上述公式代入中间结果后为: MODE.MULT({5,5;1,1;6,6;2,2;6,6;2,2;6,6;2,2}) 有两个数字出现的次数最多,返回: {6;2} 6.
本次的练习是:从一个由文本和数字组成的文本字符串中,提取出连续最长的数字。如下图1所示,在单元格B2中包含一个由文本和数字组成的字符串,很显然,其最长数字是9367。 ?...图2 公式解析 在公式中,使用了MID函数,通常,我们使用MID函数如下: =MID(B2,5,2) 返回单元格B2中从第5个字符开始的2个字符,在图1的示例中,返回“2E”。...公式中共3个部分:单元格引用,起始位置,要提取的字符数。 然而,现在要从单元格B2内的每个起始位置提取多个值! 在上面解决方案的公式中: ROW(A1:A50) 创建了50个起始位置。...MID(B2,ROW(A1:A50),COLUMN(A1:Z1)) 的结果如下图3所示。 ? 图3 由于我们仅需要纯数字,例如6、62、622,等等。...于是,对MID函数获得的数组乘以1,这样,数字文本转换成数字,而其它则为错误,如下图4所示。 ? 图4 IFERROR函数将所有错误值转换为空,这样只剩下数字,如下图5所示。 ?
今天的练习是:如下图1所示的数据,每个单元格中包含由换行符分隔的3个数字,现在需要提取其中10位长的数字,如图1中的B列所示。 ? 图1 先不看下面的答案,自已试试。...解决方案 公式1 可以试试下面的公式: =LOOKUP(9E+307,--MID(A2,ROW(INDIRECT("1:"& LEN(A2)-9)),10)) 该公式使用MID函数从单元格中的第1个数字开始依次取...10位数,共14个数字,这14个数字中,由于有空格的存在,所以除单元格中的10位数外,其余都是9位数。...然后使用LOOKUP函数在这些数字中进行查找,返回最大的一个数字,即单元格中的10位数。 公式2 试试下面的公式: =MID(A2,SEARCH(CHAR(10)&REPT("?"...提示:可以使用“公式求值”功能,详细查看上述公式是怎么运行的。
在上一篇文章中,小花讲解了通过观察混合文本特征,设置特定公式,完成数据提取的三种情景。...image.png 这两种情景的万能公式分别该怎么写,又该怎么理解呢?且听小花细细道来。 四、提取数值的万能公式 情景特征:除了目标数值,文本中不存在其他数字,否则容易产生干扰。...该公式中使用了A2&-1/19是为了确保字符集C{"-",0,1,2,…9}的每一个字符均在FIND的查找文本中出现,确保FIND的返回值不存在错误值。...ROW($1:$100)返回有序数组{1-100},作为MIDB函数的第三个参数——要提取的字节数,即分别提取1-100个字符。学习更多技巧,请收藏关注部落窝教育excel图文教程。...由于非数字的位置值为0,所有非数字返回值均取首位0,其余数字不受影响。由于②的数字位置值是颠倒的,所以,此时提取出的数字前后也是颠倒的。
本次的练习是:如下图1所示,单元格区域A2:E5中包含一系列值和空单元格,其中有重复值,要求从该单元格区域中生成按字母顺序排列的不重复值列表,如图1中G列所示。 ?...在单元格H1中的公式比较直接,是一个获取列表区域唯一值数量的标准公式: =SUMPRODUCT((Range1"")/COUNTIF(Range1,Range1&"")) 转换为: =SUMPRODUCT...在单元格G1的主公式中: =IF(ROWS($1:1)>$H$1,"", 如果公式向下拖拉的行数超过单元格H1中的数值6,则返回空值。 3....Range1,""",COUNTIF(Range1,"<"&Arry4)),0)) 实际上,这是提取唯一且按字母顺序排列的值的标准公式构造...,详情可参阅《Excel公式技巧03:INDEX函数,给公式提供数组》。
本次的练习是:如下图1所示,在单元格区域A2:A12和B2:B12中给定两列数字,要在列C中从单元格C2开始生成一列数字。规则如下: 1. 列B中的数字的数量要小于等于列A中数字的数量。 2....列B中的任意数字都可以在列A中找到。 3. 在列A或列B已存放数字的单元格之间不能有任何空单元格。 4. 在列C中的数字是从列A中的数字移除列B中的数字在列A中第一次出现的数字后剩下的数字。 5....换句话说,列B和列C中的数字合起来就是列A中的数字。 ? 图1 在单元格D1中的数字等于列A中的数字数量减去列B中的数字数量后的值,也就是列C中数字的数量。...在公式中IF子句的第一部分: IF(ROWS($1:1)>$D$1,"" 非常直观,如果公式向下拖放后ROWS函数的值大于7,则返回空。 重点在IF子句的第二部分,即其判断条件为FALSE的部分。...单元格C3中的公式会转换为: SMALL({1;FALSE;2;3;FALSE; FALSE;4;4;5;6; FALSE },ROWS($1:2)) 返回数字: 2 依此类推。
对于数据分析,Excel可以被当做一款入门的软件。在学习R或Python前,事先掌握一定的Excel知识是百利而无一害。...今天DataHunter数猎哥就给大家分享20个Excel操作小技巧,提高你的数据分析效率。 1.快速数据批量求和 数据求和在Excel表格中很常见,如何做到批量快速求和呢?...14.公式快速转数值 按Ctrl键把需要复制的公式分两次选取进行复制粘贴。 ?...17.合并单元格快速求和 选中总计列单元格区域,输入公式:=SUM(C2:C12)-SUM(D3:D12),按【Ctrl+Enter】组合键。 ?...19.数据求和 对报表进行求和可以说是一个相当高频的操作了。比如,下图是一个对报表进行求和汇总(按行、按列、总计)的常规操作。
本文给出了一种从可能包含若干个不同长度的数字的字符串中提取指定长度的数字的解决方案。在实际的工作表中,存在着许多此类需求,例如从字符串中获取6位数字账号。...在字符串中正确定位一个6位数字,需要考虑在与任意6个连续数字的字符串相邻的之前和之后的字符,并验证这两个字符都不是数字。...由于解决方案的关键之处在于有效地测试所有长度为8个字符的子字符串,并验证其中的子字符串依次由1个非数字、6个数字和1个非数字组成。对于6个数字处于字符串的开头或结尾的情况,进行适当调整。...回想一下,我们正在搜索一次出现的六个数字,该数字的两端都由一个非数字包围。...假设在在B1中指定要提取的数字的长度,则公式为: =0+MID("ζ"&A1&"ζ",1+MATCH(4*B1,MMULT(N(ISERR(0+MID(MID("ζ"&A1&"ζ",ROW(INDEX(
本次的练习是:如下图1所示,使用公式拆分列A中的字符串,从中返回列B中的字符串。...图1 你的公式应该处理任意长度的字符串和任意长度的数字——不仅仅是图1中所显示的长度。此外,不应该使用任何辅助单元格、中间公式或命名区域,或者VBA。 如何使用公式获得结果?...(注:本文来自于chandoo.org中的公式挑战栏目,供有兴趣的朋友尝试和学习。)...问题的难点在于有一个文本块,然后是一个数字块,接着是我们实际想要提取的文本/数字块。因此,由于前面有一个文本/数字块,很难确定第二个文本/数字块的位置。...(A 公式解析 这个方法是试图找到一个数字紧跟一个字母的位置点。
领取专属 10元无门槛券
手把手带您无忧上云