Excel数组公式
excel 中如何利用数组公式来计算单元格个数
计算单元格个数包括:计算区域内文本单元格个数、数字单元格个数、错误单元格个数、逻辑值单元格个数等。 在本文讲解的这些关于数组公式的应用案例中,会使用到一些函数,如果大家在学习的过程中对这些函数不太理解,可以在网站上面的搜索框输入相关关键词或者点击现有的关键词进行查询。 数组公式的典型应用案例:计算数据区域内文本单元格的个数 如下图所示,如何计算出A1:F5区域内包含的文本单元格个数,数字单元格个数? 方法是:单击E7单元格,输入公式:=SUM(IF(ISTEXT(A1:F5),1,0)),然后同时按下同时按Ctrl+Shift+Enter键结束公式的输入,即可得到答案:10 单击E9单元格,输入公式:=SUM(IF(ISNUMBER(A1:F5),1,0)),然后同时按下同时按Ctrl+Shift+Enter键结束公式的输入,即可得到答案:20 公式解析:在这个数组公式中,利用ISTEXT函数判断单元格数据是否为文本,如果为文本,就返回数字1,否则返回数字0,然后再用SUM函数对这个数组常量求和。 利用ISNUMBER函数判断单元格数据是否为数字,如果为数字,就返回数字1,否则返回数字0。表达式IF(ISNUMBER(A1:F5),1,0)的结果就是一个有数字1和0组成的数组常量,然后再用SUM函数对这个数组常量求和。 通过以上实例介绍的方法,我们可以求出一个单元格区域内包含的错误单元格个数、逻辑值单元格的个数等等。只是使用到的函数不同而已,求错误单元格个数需要用到函数:iserror函数,求逻辑值单元格个数需要用到函数:islogical函数。
Excel数组公式如何执行多次计算
一个Excel 排列 式 是一个公式,它对一个或多个数组中的值进行计算,而不是单个数据值。在电子表格程序中,数组是一系列相关数据值,通常存储在工作表的相邻单元格中。本指南介绍如何在所有现代版本的Excel中使用数组公式。什么是数组公式?数组公式类似于常规公式: •他们以等号开头( = ) •使用与常规公式相同的语法 •使用相同的数学运算符 •遵循相同的操作顺序在Excel中,数组公式由大括号括起来 { } - 这些括号不能只输入;必须通过按下它们将它们添加到公式中 按Ctrl , 转移 , 和 输入 将公式键入一个或多个单元格后的键。因此,数组公式有时被称为a CSE 式 在Excel中。此规则的一个例外是当花括号用于输入数组作为通常仅包含单个值或单元格引用的函数的参数时。例如,在下面的教程中使用 VLOOKUP 和 选择 函数创建左查找公式,为其创建一个数组 选择 功能 Index_num 通过在输入的数组周围键入大括号来进行参数。创建数组公式的步骤如果正确完成,公式将被大括号括起来,并且持有公式的每个单元格将包含不同的结果。无论何时编辑数组公式,花括号都会从数组公式周围消失。要取回它们,必须按下输入数组公式 按Ctrl, 转移,和 输入 再次键,就像第一次创建数组公式时一样。有两种主要类型的数组公式:
如何利用Excel数组公式统计各班优秀人数
期末考试期间,教导处的阿明忙得不亦乐乎,不时地发出感叹:“现在各班编在一起考试,统计优秀、及格、低分人数,真让人头疼”。 我知道他在操什么心,却心不在焉地说:“countif函数你不是会用吗?” “会啊,但是,你看看,全年级各科成绩都在同一个工作表中,比如,统计二(1)班优秀人数,公式为‘=countif(D2:D69,">=96")’”…… 我扫了一眼,继续敷衍他:“是啊,没错。” “当然没错,只是‘D2:D69’这个参数中的两个行号(2和69),太烦人了,要逐个修改,你看看,每个年级十个班,每个班八九个学科,每科都要统计优秀、及格、低分人数,算算要改多少处!不管是直接修改还是用鼠标拖选,都是一个字:烦!”阿明一边说着,一边一遍又一遍地用鼠标框选着要填的统计表格…… 我笑了笑:“想不烦,倒也还有一招:请数组公式来帮忙!” 阿明一听,顿时来了劲:“什么是数组公式?如何用?” 我说:“别急,一步一步来,先做点准备工作:用left从考号中提出班级!”阿明很熟练地在N2单元格中输入“=LEFT(B2,3)”,然后,双击N2左下角的填充柄,班级代号瞬间便提到N列了(如图1)。 “再在表格旁边添加一个班级代号,比如‘二(1)班’就用‘201’,‘二(2)班’就用‘202’……”不等我说完,阿明就已在表格左边插入了相应的代号(如图1)。 “下一步怎么办?该数组公式出场了吧!”阿明迫不及待地起身让座。 “好,我就来现身说法,统计一个数据吧:二(1)班语文优秀人数。”我边说边在E708单元格输入了一个这样的公式:=SUM(($D$2:$D$702>=96)*($N$2:$N$702=TEXT($B708,0)))。 看看阿明那一脸的迷惑,我不得不加以解释: ($D$2:$D$702>=96)——对每一行的语文成绩进行判断,返回结果为1或0(优秀为1否则为0); ($N$2:$N$702=TEXT($B708,0))——对N列对应行的班级代号进行判断,看是否是“201”(TEXT($B708,0)),同样得出1或0的结果; ($D$2:$D$702>=96)*($N$2:$N$702=TEXT($B708,0))——然后,两者相乘,即每一行如果语文成绩为优秀且班级代号为“201”,那么这一行的结果是=1;否则就是0(1×0或0×1或0×0)。最后sum就将这所有的0和1加起来。很显然,加上0等于没加,所以结果是几就表示有几个1相加,也就是二(1)班有几个优秀学生。 阿明似乎听懂了,抢着按了下回车键,可是E708单元格中并没了出现预期的数字,而是令人伤心的“#VALUE!”…… 看着满脸狐疑的阿明,我说:“数组公式输入的最后一步,不是按Enter,而是按Ctrl+Shift+Enter。”说着,我双击E708单元格,进入编辑状态,然后同时按下Ctrl+Shift+Enter三个键,奇迹出现了,“#VALUE!”变成了22——二(1)班优秀人数(如图2)。跟先前阿明用“=COUNTIF(D2:D69,">=96")”统计的一模一样 阿明一激动,一连试了好几遍数组公式,感觉省事多了,不由得最后向我竖起大拇指:“还是信息技术老师厉害。” 我得意地说:“我厉害,那是因为我站在“巨人”的肩膀上,呵呵。这一招还是从Office办公达人网学来的呢!”
excel 如何通过数组公式求区域内N个最大数、最小数之和的方法。
如果excel中一个单元格数据区域的数据杂乱无章,如何在不经排序的情况下快速求出最大的N个数值之和。要求出N个数值之和,需要使用SUM函数、LARGE函数、ROW函数。 如下图所示:利用数组公式求出销售额前三名的总和。 方法是,单击D15单元格,输入公式:=SUM(LARGE(D2:D13,ROW(A1:A3))),然后同时按下同时按Ctrl+Shift+Enter键结束公式的输入,即可得到前三名的销售额之和。 公式分析:公式的设计原理是利用ROW函数生成一个自然数数组常量{1;2;3……},然后利用LARGE函数得到一个最大的前N个数的数据序列,最后再用SUM函数对这个数据序列进行求和。 上面实例的是求3名最大数之和,公式是ROW(A1:A3),如果是求前5名最大数之和,公式则为ROW(A1:A5)。当然也可以不使用ROW函数,直接使用数组常量{1;2;3;4;5}这样的形式也是可以的。所以单击D15单元格,也可以输入这个公式:=SUM(LARGE(D2:D13,{1,2,3})),然后同时按下同时按Ctrl+Shift+Enter键结束公式的输入,也可以得到前三名的销售额之和。 延伸阅读:我们还可以使用INDIRECT函数和ROW函数,设计一个动态的计算前N个最大数字之后的表格。比如在K3单元格输入5,在K4单元格输入公式:=SUM(LARGE(D2:D13,ROW(INDIRECT("1:"&K3)))),然后同时按下同时按Ctrl+Shift+Enter键结束公式的输入,也可以得到前5名的销售额之和。设计完成后我们可以在K3单元格随意输入数字,都可以快速查询到前几名之和。 通过上面的实例,我们学会了利用数组公式求一个杂乱无章的单元格数据区域的N个最大数之和,如果我们将上面公式中的large函数改为small函数,即可求出数据区域内N个最小数之和。
excel数组公式 使用基础教程
数组公式是指可以同时对一组或两组以上的数据进行计算的公式,计算的结果可能是一个,也可能是多个。 在数组公式中使用的数据称为数组参数,数组参数可以是一个区域数组,也可以是常量数组。 1、数组公式的建立方法 要输入数组公式,首先必须选择用来存放结果的单元格区域(也可以是一个单元格),然后输入公式,最后按【Ctrl+Shift+Enter】组合键锁定数组公式,Excel 将在公式两边自动加上花括号“{}”。 2、数组公式应用 用数组公式计算两个数据区域的乘积 当需要计算两个相同矩形区域对应单元格的数据之积时,可以用数组公式一次性计算出所有的乘积值,并保存在另一个大小相同的矩形区域中。 步骤1 打开一个Excel表格,选择要放置计算结果的单元格区域 E3:E11,如图1左图所示。图1
如何在Excel中隔行插入多行三例
通常在Excel中隔行插入多行的方法是在辅助列中输入数值或公式,然后进行排序。下面是几个示例: 示例一:间隔一行插入多行 如图,要在每个“姓名”的后面插入2行,步骤如下: 1.以C列为辅助列,在C2、C3分别输入数字“1”、“2”,然后选择这两个单元格,双击填充柄填充序列到C11单元格。 2.在C12单元格中输入公式: =CEILING(ROW(A1),2)/2 或: =INT((ROW(A1)-1)/2)+1 然后拖动填充柄向下填充公式,直到公式返回结果的最大值大于A列“姓名”的数量,本例为“10”。
在excel中,什么是数组公式呢?Excel 数组公式应用及实例教程
在excel中,什么是数组公式呢?数组公式,简而言之,就是以三键结束的,就是“数组公式”。所谓的三键就是指当输入完公式之后,按下CTRL+SHIFT+ENTER键结束。 “数组公式”的概念只涉及公式的表达形式,而不是公式内部的运算模式,注意不要将其同“数组运算”混淆了。“数组公式”只是用来显式通知Excel,某公式被用户要求执行数组的计算方式的表达形式。 小编提醒注意的是:数组公式不要滥用,因为数组公式是很耗内存的。 下面是一个关于数组公式的实例教程: 已知进货日期和保质期,计算离保质期还有多少年月日。如下图所示: 我们可以结合DATEDIF、SUM和TEXT函数来实现计算。 在H2单元格,输入公式:=TEXT(SUM(DATEDIF(C2,D2,{"y","ym","md"})*{10000,100,1}),"0年00月00日"),然后不要按回车确定,记得一定是按下CTRL+SHIFT+ENTER键结束公式的输入。按下CTRL+SHIFT+ENTER键结束数组公式的输入,excel会自动在公式的两侧添加一对大括号,表明是数组公式,而不是手动输入大括号。 然后单击H2单元格,向下复制公式即可完成其余的计算。 在excel中灵活使用数组公式,可以减少大量的工作量。
excel数组公式是什么意思 excel数组公式快捷键
excel数组公式是什么意思呢?什么叫数组公式。所谓数组公式就是可以执行多项计算,并返回一个或者多个结果。使用数组公式,必须使用数组公式快捷键完成。
excel 数组公式的几个必要的概念 数组公式的初步认识
1、数组 什么是数组?仁者见仁,智者见智。 我个人的感觉是:数组是具有某种联系的多个元素的组合。某班级里有50个学生,这里,如果班级是数组,50个学生就是数组里的50个元素。当然,班级里的元素是可变的,可以是20个,可以是30个,也可以是60个。放到Excel里,班级就相当于工作表,而学生就相当于工作表里的单元格数值。所以,Excel里的数组,我还把它理解是为多个单元格数值的组合。2、公式 如果你在使用Excel,如果你说你还没听过“公式”这个名词,我只能说:“你太OUT了!” 什么是公式?我的理解是:在Excel里,凡是以半角符号“=”开始的、具有计算功能的单元格内容就是所谓的Excel公式。如:=SUM(B2:D2),=B2+C2+D2 这些都是公式。3、数组公式 数组公式是相对于普通公式而言的。普通公式(如上面的 =SUM(B2:D2),=B2+C2+D2 等),只占用一个单元格,只返回一个结果。 而数组公式可以占用一个单元格,也可以占用多个单元格。它对一组数或多组数进行多重计算,并返回一个或多个结果。 集合 在教室外面的学生,老师把他们叫进教室。老师说:“第一组第一桌的同学进教室。”于是第一组第一桌的同学走进教室。老师接着叫:“第一组第二桌的同学进教 室。”然后是第二桌的同学进教室。老师再叫:“第一组第三桌的同学进教室。”然后第三桌的同学走进教室。接着是第四桌,第五桌……,就这样一个学生一个学生的叫,这就是普通公式的做法,学生回到座位,就像数值回到工作表的单元格里,一个座位叫一次,就像一个单元格输入一个公式。 如果老师说:“第一组的全部进教室。”学生听到命令后,第一桌的同学走进去,然后是第二桌,第三桌……,老师不用再下第二个命令,这是数组公式的处理方法。4、数组公式的标志 在 Excel 中数组公式的显示是用大括号对“{}”来括住以区分普通 Excel 公式。如图: (1)数组公式: (2)普通公式:输入数组公式:用 Ctrl + Shift + Enter 结束公式的输入。 特别提醒:这是最关键的,这相当于用户告诉Excel:“我不是一般人,爷我是数组公式,你得对我特别关照。”于是,Excel明白了,不能用常规的逻辑来对待这位大爷。当你按下三键后,Excel会自动给公式加上“{}”以和普通公式区别开来,不用用户输入“{}”,但如是是想在公式里直接表示一个数组,就需要输入“{}”来把数组的元素括起来。 如: =IF({1,0},D2:D8,C2:C8) 这个公式里的数组{1,0}的括号就是用户自己输入的。5、数组的维数“维数”是数组里的又一个重要概念。数组有一维数组,二维数组,三维数组,四维数组…… 在公式里,我们更多接触到的只是一维数组和二维数组。 一维数组我们可以简单地看成是一行的单元格数据集合,比如 A1:F1。一维数组的各个元素间用英文的逗号“,”隔开(如果是单独的一列时,用英文分号“;”隔开)。{1,2,3,4,5,6},这就是一个有6个元素的一维数组,或者说,只有一行的数组。数组的各个元素间用逗号“,”分隔。如果想把这个数组输入到工作表的单元格里,同时选中同一行里相领的六个单元格,输入:={1,2,3,4,5,6} 后,三键结束公式,你就可以看到这个一维数组被输入到工作表的单元格里了。 自己动手试一试。 二维数组可以看成是一个多行多列的单元各数据集合,也可以看成是多个一维数组的组合。如单元格 A1:D3,就是一个三行四列的二维数组。我们可以把它看成是 A1:D1、A2:D2 与 A3:D3 这三个一维数组的组合。二维数组里同行的元素间用逗号“,”分隔,不同的行用分号“;”分隔。 我们可以用上面的方法,在A1:D3区域输入数据,并引用地址,按F9来查看。 可以看到在数组里,换行的时候,元素间的分隔符是“;”,所以,要判断一个数组是几行几列的数组,只需要看里面的逗号和分号就知道了。 如果需要把数把数组返回到单元格区域里,首先得看数组是几行几列,然后再选择相应的单元格区域,输入数组,三键结束。 对了,是哪三键你还不要忘记了:Ctrl+Shift+Enter 记住: (1)一维数组是单独的一行或一列。二维数组是多行多列。 (2)数组里的元素,同一行内的各元素用英文逗号“,”分开,用英文分号“;”将各行分开。 (3)二维数组的元素按先行后列的顺序排列。总是这样:{第一行的第一个,第一行的第二个,第一行的第三个……;第二行的第一个,第二行的第二个,第二行的第三个……;第三个的第一个……}现在你解决这个问题会用什么办法呢? 我知道很小儿科,千万不要在心里骂我拿这种简单的问题来考你。 是的,很简单,在D2单元格输入公式“=B2*C2”,下拉公式即可。在这里,D2:D4三个单元格输入了三个普通公式,分别返回了三个值在三个单元格里。这就是老师在点学生进教室,第一组第一桌的同学进教室入座,第一组第二桌的同学进教室入座…… 我们试着用数组公式来解决这个问题,老师嗓子不好,让他叫一次我们就乖乖进教室去得了。选中D2:D4输入公式“=B2:B4*C2:C4”,三键结束输入数组公式,即可得到同样的结果。 这就是一个多单元格的数组公式,多单元格数组公式是进行批量计算,可节省计算的时间,同时,它还有一个特点。当你输入完数组公式后,请你尝试修改公式区域里其中一个单元格的公式,看看会有什么结果。是的,你已经发现了,会弹出一个对话框,提醒你:不能修改数组的某一部分。 这就是多单元格数组公式的一个重要的特点:保证公式集合的完整性不被修改。这可以防止用户在操作时无意间修改到表格的公式。这是不是会安全得多? 当然,如果你要修改公式的话,必须得选中公式所在的所有单元格。这一题如果你用普通公式又怎么解决呢?我想象中可能有两种方法: A、插入辅助列,先求出各商品的销售额,然后再求总和。 B、直接在F1输入公式“=SUM(B2*C2,B3*C3,B4*C4)”,这样看上去不错,可是,如果有100行数据,一千行号数据呢?先不考虑单元格能容纳多少字符的问题,就光输入公式,累也得把你累趴下,显然是行不通的。 这时候就需要用数组公式来完成了。 选中F1单元格,输入公式“=SUM(B2:B4*C2:C4)”,三键确认输入即可。这是一个单个单元格的数组公式,B2:B4*C2:C4是两个一维数组相乘,返回一个新的一维数组,最后用SUM函数对返回的数组进行了求和。这里,用一个数组公式代替了多个公式的方式来完成了数据的计算。做了这个问题,总结一下,什么时候会用到数组公式? 是的,当运算中存在着一些只有通过复杂的中间运算过程才会等到结果的时候,就需要使用数组公式了。 这一贴的内容非常简单,记住几点: (1)三键输入数组公式。 (2)数组公式同时进行多个计算,可返回一个或多个结果。 (3)多单元格数组公式需选区多个单元格进行输入,多单元格数组公式具有保护公式的作用。 (4)数组公式可以完成复杂的中间运算得到最终想要的运算结果。
讲一讲excel数组公式是怎么计算的
1、行列数相同数组的运算 数组1+数组2,这是一个多单元格的数组公式,第一个数组的第一个元素与第二个数组的第一个元素相加,结果作为数组公式结果的第一个元素,然后第一个数组的第二个元素与第二个数组的第二个元素相加,结果作为数组公式结果的第二个元素,接着是第三个元素……直到第N个。 这是横向的一维数组的计算,原理同上。 这是二维数组与二维数组进行计算,生成一个新的二维数组的多单元格数组公式。同样的计算过程,第一个数组的第一行的第一个元素与第二个数组的第一行的第一个元素相乘,结果为数组公式的结果的数组的第一行的第一个元素,接着是第二个,第三个……直到第N个。 规律很简单:两个同行同列的数组计算是对应元素间进行运算,并返回同样大小的数组。 正如穿鞋要穿合脚的才走得了路一样,在公式或函数中使用数组时,运算对象或参数的数组维数要匹配,否则计算会出错。教室里,第一排的有8个 同学,第二排有9个同学,老师说:“第一排和第二排的同学交换作业,互相检查。”第二排的第9个同学和谁交换?这就是数组的不匹配。数组不匹配时,工作就 不能完成了。 你可以试着改一改数组的参数试试。 2、数组与单一的数据的运算 这相当于在E42单元格输入公式=A42*$C$42,然后下拉复制公式实现。 等同于在B56输入公式“=B52+$B$54”,然后右拉复制公式实现。 等同于在C67单元格输入公式“=A60+$E$60”然后右拉下拉复制公式实现。 不难看出:一个数组与一个单一的数据进行运算,是将数组的每一元素均与那个单一数据进行计算,并返回同样大小的数组。 3、单列数组与单行数组的计算 两个数组相加,查看结果是几行几列:在任意单元格输入公式“=A80:A83+B87:E87”,抹黑公式,按F9键,可看到公式的计算结果为数组 “{110,210,310,410;120,220,320,420;130,230,330,430;140,240,340,440}”通看看分号 与逗号,我们知道这是一个四行四列的数组,选择一个四行四列的单元格,输入公式“=A80:A83+B87:E87”,三键结束,可看到返回的结果为: 相当于在E80输入公式“=$A80+B$87”右拉下拉复制公式的结果。 单列数组与单行数组的计算: A、计算结果返回一个多行列的数组; B、返回数组的行数同单列数组的行数相同、列数同单行数组的列数相同。 C、返回数组中第R行第C列的元素是单列数组的第R个元素和单行数组的第C个元素运算的结果。 4、行数(或列数)相同的单列(或单行)数组与多行多列数组的计算 (1)单列数组的行数与多行多列数组的行数相同时: (2)单行数组的列数与多行多列数组的列数相同时: 计算规律同单行单列的数组计算的规律大同小异: A、计算结果返回一个多行列的数组; B、返回数组的行、列数与多行多列数组的行列数相同; C、单列数组与多行多列数组计算时,返回的数组的第R行第C列的数据等于单列数组的第R行的数据与多行多列数组的第R行第C列的数据的计算结果; D、单行数组与多行多列数组计算时,返回的数组的第R行第C列的数据等于单行数组的第C列的数据与多行多列数组的第R行第C列的数据的计算结果。 =======留给你的思考题======= 讲到这里,我们可以暂停一下进度。课间休息,插播一段广告: 你可以喝杯水,听听音乐,然后我们来看几个例子: 图1: 图2: 图3: 上面的三张图,第一个公式是我们前面讲的例子,第二个公式是在第一个公式的基础上对参与计算的数组区域进行了修改,但是,两个不同参数的公式,返回的结果 却都是一样的。这里我只是举了三个例子,你可以把前面我们讲过的公式里的数组参数都修改修改,什么情况下,会返回相同的结果呢?它们又有什么共同的地方? 知识总是光顾那些善于总结和发现的人。否则,踩着别人的脚印走,想要看到别人没看到的风景,你要等到猴年马月? 好了,我也仿小学老师的口气问问大家:“为什么两个不同的公式,返回的结果都是一样的呢?从上面的图,你发现了什么?把你的发现说给你的伙伴听一听。” 这就是你今天的作业,如果你是真心想想学数组公式的,记得跟贴回复! 5、行、列数不相等的数组计算 (1)行数不相等的单列数组与与多行列数组的计算 (2)列数不相等的单行数组与多行多列数组的计算 (3)行、列数不相同的两个多行多列数组的计算 有了对前面例子的分析,再来看这三个例子就相对简单了。它们的计算规则和前面都是一样的,不难看出: A、公式返回一个多行多列数组; B、返回数组的行数与参与计算的两个数组中行数较大的数组的行数相同,列数与较大的列数的数组相同; C、返回数组的大于较小行数数组行数、大于较大列数数组列数的区域的元素均为#N/A。有效元素为两个数组中对应数组的计算结果。 需要提醒一点的是,对会返回#N/A的数组,在进行再计算和处理时,考虑对#N/A值作相应的处理! 比如我们想对上面数组与数组2相加后的结果进行求和: 正确的公式(数组):=SUM(IF(ISNA(A213:B216+D213:F215),0,A213:B216+D213:F215)) 通过ISNA函数对返回的数组里的各个元素进行了判断和处理,把把有的#N/A值替换成数值0,最后再用SUM函数对所有数值进行求和。 我们说,数组计算时,得注意行列数的匹配,其实如果了解了数组的计算原理后,能正确处理那些返回的#N/A值的话,很多时候,并不会出错的。