excelperfect 条件格式是有趣的,特别是使用公式并链接条件到单元格中时。下面是使用公式的条件格式的一些说明: 1.条件格式意味着如果条件满足应会应用设定的格式。...4.评估为TRUE或FALSE的逻辑公式可以用于创建条件格式。 5.条件格式可以使用非数组公式和数组公式。 6.条件格式是易失性的:经常重新计算,减慢整个工作表的计算时间。...7.使用公式创建条件格式的步骤: (1)选择单元格区域。 (2)打开“条件格式规则管理器”对话框。...(7)单击“格式”按钮,在“设置单元格格式”对话框中设置任意的格式组合(数字、字体、边框、填充)。 (8)单击“确定”关闭“设置单元格格式”对话框。 (9)单击“确定”关闭“新建格式规则”对话框。...在单元格A17中指定赛车手的姓名,单元格B17中指定要显示的时间数量。单元格D18中的数组公式计算得到指定的时间并作为条件格式的辅助单元格。 ?
本次的练习是:在有些情形下,公式中不能直接显式使用数组常量。当然,可以将这些数组常量存储在定义的名称中,然后在公式中引用。...这里所要求的公式非常简单,可生成下面的结果: {-1;1} 要求:引用的单元格区域必须同时包含行和列,不能只是行(如1:2)或只是列(如A:B);不能使用名称;公式使用的字符数最少。...公式 公式1: -1^ROW(A1:A2) 公式2: 2*ROW(A1:A2)-3 下面是不符合要求的公式: 公式3: -1^COLUMN(A1:B1) 生成数组{-1, 1},返回的是行数组。...公式4: -1^ROW(A1:B1) 生成数组{-1, -1},因为A1和B1都在第1行。 公式5: -1^ROW(1:2) 仅使用行引用。 公式6: -1^ROW($1:$2) 仅使用行引用。...如果不考虑公式所用字符最少这个前提的话,可以使用下面的公式: 公式7: FREQUENCY(2,1)*2-1 公式8: INDEX(MUNIT(2),,2)*2-1 公式9: MODE.MULT(-1,
图1 图1所示的工作表中的计算过程如下: 1. 在单元格E3中使用公式=D3-C3计算该天的变化值,这只是一个简单的单个值之间的减法运算。 2. 同样,使用减法运算计算出其它3天的变化值。 3....在单元格E8中,使用公式=MAX(E3:E6)求出这4天变化值中的最大值。 很显然,这些公式都不是数组公式,因为它们只是在单个项目上执行运算,得到的结果也是单个项目。...单个单元格的数组公式 下图2中,使用公式来计算4天股价变化的最大值。 ? 图2 图2中使用了一个公式进行计算,其过程如下: 1....技巧:使用评估公式元素来显示结果数组 在数组公式处于编辑状态时,我们可以评估公式元素的计算结果。例如,在图2所示的示例中,我们可以看看该公式中的D3:D6-C3:C6是否生成与图1辅助列一致的结果。...如果我们不仔细,很可能认为这样的公式计算结果是对的,因此在使用数组公式时,在输入完公式后,我们要留意公式栏中,是否在公式两边已添加了花括号。
你已经听说过数组公式,知道在某些情形下数组公式是最有效的解决方案,但不知道如何创建它们。 4....有时候,使用数组公式是解决问题的唯一方法,如下图1所示。 ? 图1:如果不使用数据透视表,在Excel 2010以前的版本中没有AGGREGATE函数,使用数组公式是有效的解决方案。 2....通常,使用公式与使用Excel内置功能(例如排序、筛选和数据透视表)比的优点在于,当改变公式输入时,公式结果会实时更新。学习数组公式,扩展了你的公式技能,在创建Excel解决方案时有更少的限制。...图3:当提取记录的条件经常改变时,使用公式比使用筛选功能更好。在单元格G8中的数组公式是提取满足3个条件的记录的有效解决方案。 4. 如果理解数组公式如何运作,就是真正理解Excel公式之美与强大。...图4:正如单元格B4中所示,这个数组公式做了似乎不可能实现的工作,统计在给定的起始日期和结束日期之间有多少个周五在13号。在你的技能中拥有强大而优美的数组公式,使用公式解决几乎任何事情成为了可能!
我们给出了基于在多个工作表给定列中匹配单个条件来返回值的解决方案。本文使用与之相同的示例,但是将匹配多个条件,并提供两个解决方案:一个是使用辅助列,另一个不使用辅助列。 下面是3个示例工作表: ?...这样,获取值的数组公式(单元格C7)如下: =VLOOKUP(A7&”|”&B7,INDIRECT("'"&INDEX(Sheets,MATCH(TRUE,COUNTIF(INDIRECT("'"&Sheets...16:使用VLOOKUP函数在多个工作表中查找相匹配的值(1)》。...解决方案2:不使用辅助列 首先定义两个名称。注意,在定义名称时,将活动单元格放置在工作表Master的第11行。...C:C"),$B11)>0,0) 名称:Arry2 引用位置:=ROW(INDIRECT("1:10"))-1 在单元格C11中的数组公式如下: =INDEX(INDIRECT("'"&INDEX(Sheets
在某个工作表单元格区域中查找值时,我们通常都会使用VLOOKUP函数。但是,如果在多个工作表中查找值并返回第一个相匹配的值时,可以使用VLOOKUP函数吗?本文将讲解这个技术。...最简单的解决方案是在每个相关的工作表中使用辅助列,即首先将相关的单元格值连接并放置在辅助列中。然而,有时候我们可能不能在工作表中使用辅助列,特别是要求在被查找的表左侧插入列时。...图4:主工作表Master 数组公式如下: =VLOOKUP($A3,INDIRECT("'"&INDEX(Sheets,MATCH(TRUE,COUNTIF(INDIRECT("'"&Sheets&"...B1:D10"),3,0) 其中,Sheets是定义的名称: 名称:Sheets 引用位置:={"Sheet1","Sheet2","Sheet3"} 在公式中使用的VLOOKUP函数与平常并没有什么不同...B:B"}),$A3) INDIRECT函数指令Excel将这个文本字符串数组中的元素转换为单元格引用,然后传递给COUNTIF函数,同时单元格A3中的值作为其条件参数,这样上述公式转换成: {0,1,3
可以看到,其在中括号中表明该参数是可选的,在使用VLOOKUP函数时可以不包含该参数。 参数range_lookup接受逻辑值,指定是精确查找还是近似查找。...此时,VLOOKUP函数在可能的条件下返回匹配值,否则返回小于lookup_value的最大值。 注意到,近似查找的算法比精确查找的算法更快,因此应尽可能使用它。...如图1所示,查找表在单元格区域F1:G6,根据列C中的成绩查找相应的等级。 ? 图1 单元格D2中的公式为: =VLOOKUP(C2,F2:G6,2,TRUE) 向下复制至单元格D5。...图4 示例中列C最后一个数字是123,下面的公式会找到该数: =VLOOKUP(BIGNUM,C:C,1,TRUE) 如下图5所示。 ?...图5 公式中,BIGNUM是关键,它必须比该列中可能出现的数都要大。
大家知道,使用VLOOKUP函数进行查找时,如果找到多个匹配的值,将只返回第一个找到的值。如下图1所示,工作表Data中的数据。...图1 在工作表Vlookup中,列C中是要查找的值,列D中是找到的值,如下图2所示。 图2 从图1所示的数据中可以看出,当查找C6中的值时,有两个相同的值,但VLOOKUP函数只返回第1个值。...如上图2中列E的数字所示,如果COUNTIFS函数返回值1,则表明VLOOKUP函数找到的值有效,否则说明存在多个要查找的值。 扩展 1....要判断某列数据有无重复值,例如上图1中工作表Data的列A数据,可以使用公式: =COUNTA(Data!A2:A27) 的值,与数组公式: =SUM(1/COUNTIFS(Data!...如果COUNTIFS函数显示存在多个值,而我们想获取最后1个匹配的值,则可使用公式: =LOOKUP(1,1/(Data!A2:A27=C6),Data!
如下图1所示,我们在单元格区域中使用数组公式生成序号,这样,使用者就不能够随意删除其中一个单元格中的序号,只能选中该区域后全部删除。 ? 图1 下面是创建上面的数组公式的步骤: 1....在活动单元格(A2)中输入公式: =ROW(A2:A6)-ROW(A2)+1 3. 公式中使用了ROW函数,能够浏览单元格区域并得到该区域中每个单元格所在行的行号。 4....如果需要编辑数组公式,则可以在该数组公式区域中编辑任一单元格中的公式,然后按Ctrl+Shift+Enter键。 5. 选择数组公式区域的任意单元格,在公式栏中都会看到相同的公式。 6....上例中的数组公式可以归纳为一个求序号的公式构造: ROW(单元格区域)-ROW(单元格区域中的第一个单元格)+1 这个公式构造可以作为更高级的数组公式中的元素。...图7:公式MOD(ROWS(A$1:A1)-1,3)+1的工作原理。 示例:将表转换成列数据 如下图8所示,从表中提取数据并放置在一列中。
标签:切片器,动态数组,LAMBDA函数 本文的示例数据如下图1所示。这是一个名为“表1”的表,由Excel自动命名。...如下图2和图3所示,使用SUBTOTAL函数统计可见行数, 图2 图3 在单元格B9中的公式为: =SUBTOTAL(103,表1) 公式中,参数103告诉SUBTOTAL在统计时忽略隐藏行。...图4 图5 在单元格C3中的公式为: =SUBTOTAL(103,[@示例列表]) 创建切片 选择表中的任意单元格。单击功能区“插入”选项卡“筛选器”组中的“切片器”。...将切片器连接到公式 使用FILTER函数来仅返回表中的可见行,即“标志”列为1的行,如下图8所示。...图8 单元格B13中的公式为: =FILTER(表1[示例列表],表1[标志]=1) 如果不想在原表中添加额外列(如本例中的“标志”列),则可以使用LAMBDA函数,如下图9所示。
INDEX函数虽然可以生成数组,但如果不用数组公式,似乎只能返回其生成的数组中的第一个元素。然而,可以使用INDEX函数来给公式提供数组。...不像OFFSET函数,其第一个参数必须是对工作表中实际单元格区域的引用,INDEX函数可以接受和处理其引用的数组,该数组由公式中其他函数生成的值组成。...例如,试图找到A1:A10中第一次出现“A”、“B”和“C”所对应的相同行中B1:B10的最大值,如果使用公式: =MAX(VLOOKUP({"A","B","C"},A1:B10,2,0)) 不一定会得出正确的结果...,原因是Excel会将该公式转换为: =MAX(VLOOKUP("A",A1:B10,2,0)) 也就是说,传递给VLOOKUP函数的数组中的3个元素仅第1个元素被处理。...然而,使用上文所讲解的强制生成多个值的技术,其公式为: =MAX(VLOOKUP(T(IF(1,{"A","B","C"})),A1:B10,2,0)) 可以得到正确的结果,如下图1所示。 ?
本文给出一个基于公式的排序解决方案,将指定区域内的数据按字母顺序排序。 如下图1所示,在单元格区域A2:A11中是一组未排序的数据,在单元格区域B2:B11中是已排序的数据。 ?...因此,上述公式转换为: {3;4;9;5;7;2;1;6;10;8} 例如,所得到的数组中的第7个元素是1,是单元格B8中的字符串“Belinda”比较后的结果:按字母顺序,在区域内只有一个字符串在该字符串之前或等于该字符串...同样,在所得到的数组中的第2个元素是4,对应单元格B3中的“Laquita”比较后的结果:按字母顺序,在区域内有四个字符串在该字符串之前或等于该字符串,分别是“Belinda”、“Bula”、“Cathy...,$A$2:$A$11) 在数组中唯一的数字在第5位,因此可得到结果: Raymonde 也可以使用下面的公式获得同样的结果: =INDEX($A$2:$A$11,MATCH(1,FREQUENCY(ROWS...($1:7),COUNTIF($A$2:$A$11,"<="&$A$2:$A$11)),0)) 小结 虽然可以使用Excel的排序功能,但使用公式可以实时更新数据。
标签:Excel公式 通常,我们会在工作表中放置查找表,然后使用公式在该表中查找相对应的值。然而,这也存在风险,就是用户可能会在删除行时无意识地将查找表中的内容也删除,从而导致查找错误。...如下图1所示,将查找表放置在列AA和列BB中。 图1 如下图2所示,在查找表中查找列A中的值并返回相应的结果。...一种解决方法是在另一个工作表中放置查找表,然后隐藏该工作表。然而,如果查找表的数据不多,正如上文示例中那样,那么可以将查找表嵌入到公式中。 如下图3所示,选择公式中代表查找表所在单元格区域的字符。...图5 如上图的公式中,花括号表示其内容是数组: {"A",60;"B",35;"C",50;"D",48;"E",30} 每个逗号表示应该移动到一个新列,每个分号表示应该移动到一个新行。...应该能够直观地看出数组的组成了。
例如,下图1中单元格区域A1:A5是要使用的数据,右侧的数组公式并没有给出想要的结果。(特别说明:示例纯粹是为了演示我们要讲解的技术。) ?...图1 第一个公式使用了INDIRECT函数和ADDRESS函数组合来求单元格区域A1:A5中的数值之和。...这种包含OFFSET函数的公式技术可用于多个函数,这些函数最初拒绝数组输入。在第三个示例中,使用了DOLLARDE函数,公式如下: =SUM(DOLLARDE(A1:A5,2)) 结果为#VALUE!...在《Excel公式技巧03:INDEX函数,给公式提供数组》中,讲解了从INDEX函数强制返回数组的技术,在这里也可以使用。...在这里,我们尝试与第一个示例中的INDIRECT/ADDRESS函数组合类似的方式使用此函数,即指定参数info_type为“address”来获得要传递给SUM的一组单元格引用(当然是在通过INDIRECT
列数组常量(垂直数组常量) 如下图1和图2所示,如果使用公式引用一列中的项目,当按F9评估其值时,会看到:在花括号内放置了一组项目,文本被添加上了引号,分号意味着跨行,且项目列使用分号。 ?...图8 注意到,图8所示的公式中,Excel并没有在公式两边添加花括号,这表明,在SMALL函数中使用数组常量作为参数k的值,不需要按Ctrl+Shift+Enter组合键。...示例:在VLOOKUP函数中的查找技巧 使用数组常量来节省工作表空间 在使用VLOOKUP函数时,如果你不想通过查找表查找且数据不会变化,可以将查找表硬编码到公式中,如下图16所示。 ?...图16 使用名称 除了按上述方法在公式中列出查找表的所有数据外,还可以将数组常量定义为名称并在公式中使用。如下图17所示,定义名称包含查找表数据。 ?...图18 对参数col_index_num指定数组常量 在VLOOKUP函数中的参数lookup_value不能处理数组,然而可以对参数col_index_num指定数组常量。
如下图1所示的工作表,在“商品”列中,存在一些重复的商品,现在我们要找出第2次出现的“笔记本”的销售量。 ?...图1 我们知道VLOOKUP函数通常会返回找到的第一个匹配值,或者最后一个匹配值,详见《Excel公式技巧62:查找第一个和最后一个匹配的数据》。...然而,我们可以构造一个与商品相关的具有唯一值的辅助列(详见《Excel公式技巧64:为重复值构造包含唯一值的辅助列》),从而可以使用VLOOKUP函数来实现查找匹配值。...图2 在单元格B3中输入公式: =D3 & "-" &COUNTIF( 下拉至单元格B14。...在单元格H6中输入公式: =VLOOKUP(H2 & "-" &G6,B3:E 即可得到指定的匹配值,如下图3所示。 ? 图3 可以修改单元格H2或G6中的数值,从而获取相应匹配的数据。
数组公式中的数组运算有时会显著增加公式计算时间。下面列举两个例子,看看与数组公式相比,选择非数组公式如何明显减少公式计算时间。...这里使用了5个公式来实现。下图2和图3展示了这些公式在约25000条数据中运行的时间对比。 ? 图2:TEXT函数花费更多的时间计算。 ?...图3:多个SUMPRODUCT和TEXT函数的公式,更长的计算时间。 注意,数组运算中使用不同函数的计算速度也不同。本示例中,使用MONTH和YEAR函数组合比使用TEXT函数的速度更快。...这里使用了6个公式实现。下图5展示了这些公式在约25000条数据中运行的时间对比。 ? 图5:使用SUMIFS或SUMIF函数的非数组公式明显快于相对应的数组公式。...小结 有时候,使用非数组公式替换数组公式将显著缩短公式计算时间。
表示内容如果包含√,则为真,为红色 表示内容开头为低,则为真 表示选中全部
我们在Excel电子表格中描述的工作表公式 返回一个值,该值分配给包含该公式的单元格。Excel还允许您定义一个公式,该公式可以同时将值分配给一系列单元格。这些称为 数组公式。...图1 –数组公式 假设每件商品的收入是单价乘以数量,我们可以在D4单元格中输入公式= B4 * C4,然后将此公式复制到D5,D6和D7单元格中(例如,单击D4单元格,按 Ctrl-C,然后突出显示范围...另一种方法是通过数组公式,使用以下步骤: 突出显示范围D4:D7 输入数组公式= B4:B7 * C4:C7 按 Ctrl-Shift-Enter (即按住 Ctrl 和 Shift 键并按...您可以通过突出显示整个范围并按Delete 键来删除包含数组公式的范围 。您可以覆盖数组函数,将其替换为一个值或另一个公式。重要的是要使用整个范围而不是范围的一部分。...还要注意,您也可以使用数组公式,例如{= SUM(B4:B7 * C4:C7)}。这将返回这四种设备的总收入之和。
如何在一列列表中创建包含筛选项目的数组?SUBTOTAL函数允许使用有限数量的工作表函数对此类数组进行操作,但它不会展现进行公式操作的这个数组。...使用3作为SUBTOTAL函数的第一个参数计算可见区域内的项目数。由于每个区域内只有一项,因此答案只能是0或1,如下图1所示。 图1 这样,此公式可以用作数组,指示列表中已过筛选和未筛选的行。...在图2中,是未进行筛选操作的;在图3中,是进行了筛选操作的。...图2 图3 在单元格B12中的公式: =SUM((range1="完美Excel")*(SUBTOTAL(3,OFFSET(range2,ROW(range2)-MIN(ROW(range2)),,1...) 与SUBTOTAL函数一起使用的OFFSET函数返回一个数组,该数组可用作数组公式的一个元素。
领取专属 10元无门槛券
手把手带您无忧上云