电脑教程
位置:首页>> 电脑教程>> office教程>> excel里如何使用SUMPRODUCT进行跨工作表统计数量-

excel里如何使用SUMPRODUCT进行跨工作表统计数量-

  发布时间:2023-11-27 14:23:10 

标签:公式,单元格,数组,返回,Excel教程

在Excel表中,您可以在列中的任意两个条件上进行过滤。但是在单独的列表中过滤任意数量的项目不是很好吗?如果在计算列中使用Excel的SUMPRODUCT函数,则可以。Excel 2007引入了强大的表格功能,如下图所示。表格使您可以轻松地对数据进行排序和过滤。


但是,过滤能力至少有两个问题。首先,您最多只能使用两个条件来过滤任何列。其次,每次更换过滤器时,大约需要六步。因此,更换过滤器并不是一个快速的过程。如果您只需将一个或多个过滤器复制并粘贴到一系列单元格中,甚至使用公式来更改过滤器,就会容易得多。该图说明了解决这些问题的方法。在图中,“表的项目”列只是电子表格的A列中的文本项目的列表。D列(不属于表)显示了Items列的搜索条件列表。如果公式B在列A的相邻项目中的SearchFor列表中找到任何项目,则该公式将返回TRUE。在更新列表SearchFor,您只需按下F9键(如果你手动计算模式设置),然后如果你,如果你想要的物品只希望找到的项目,或FALSE筛选TRUE找到列 未找到。SUMPRODUCT公式这是我在上面的B列中使用的 SUMPRODUCT公式:B3:= SUMPRODUCT(NOT(ISERROR(SEARCH(SearchFor,[@ Items])))+ 0)> 0如果您以前没有使用过Excel Tables,则“ [@Items]”参数对您来说会很奇怪。该参数说:“从Items列的当前行返回值。” 也就是说,它在单元格B3中的工作方式与在此处使用单元格引用A3相同:B3:= SUMPRODUCT(NOT(ISERROR(SEARCH(SearchFor,A3)))+ 0)> 0实际上,当您在单元格B3中键入此公式,但单击而不是在单元格A3中键入时,Excel会返回“ [@Items]”。因此,在输入公式时,您实际上不需要了解Table语法。但是,还有一个问题需要更长的解释:这个SUMPRODUCT公式如何起作用?回答此问题的最佳方法是遵循我最初用于创建公式的路径。为此,让我们使用单元格B4,当该单元格中的公式正常工作时,该单元格应返回TRUE …


步骤1:设置SEARCH功能。单元格B4中的SEARCH公式返回#VALUE!错误,因为它试图将多个搜索结果返回到一个单元格中。(换句话说,它正在尝试为SearchFor列表中的每个项目返回一个结果。)要查看这些结果是什么,请单击公式栏中的任意位置,然后按F9键以计算公式。当您按F9键时,您会得到以下结果:


SEARCH函数返回#VALUE! 当找不到商品时。在这里,Excel在“运动外套”中搜索“鞋子”,但失败了。它搜索“ b?w”并失败;它搜索“ c * s”并成功,返回“ 8”,然后搜索三组破折号,但失败了。因此,它返回了显示的错误值数组,中间夹着8个。在公式栏中计算结果后,就像我在这里所做的那样,按Esc键返回原始公式。我们的下一步是将这些错误值转换为FALSE值,并将“ 8”转换为TRUE值。为此,我们用NOT(ISERROR(…))包围SEARCH函数,从而为我们提供…


步骤2:将错误设置为FALSE,将成功设置为TRUE。因为我们要对结果求和,所以需要将那些TRUE和FALSE转换为1和0(一和零)。最简单的方法是在公式中添加零。(这是有效的,因为TRUE + 0 = 1且FALSE + 0 =0。)这给我们:B4:= NOT(ISERROR(SEARCH(SearchFor,[@ Items])))+ 0测试编辑栏中的更改,我们现在看到:


步骤3:将TRUE设为1,将FALSE设为0。现在,我们需要将这些结果加起来。如果总数大于零,我们知道至少有一个过滤器起作用。我们通过再次扩展公式来添加结果…B4:= SUMPRODUCT(NOT(ISERROR(SEARCH(SearchFor,[@ Items])))+ 0)> 0这是公式的最终版本。现在,我们可以将其复制到表的其余部分,从而得到以下结果:


步骤4:如果所有1的总和大于零,则返回TRUE。我们在这里使用SUMPRODUCT的原因有两个。首先,即使公式中没有乘法(也没有“乘积”),此函数也会对数组中的值求和。因此,它可以满足我们的需求。其次,它省去了我们需要数组输入公式的其他版本的麻烦。如果您不介意在表中使用数组,则可以对这个较短的公式进行数组输入以得到相同的结果:B4:= OR(NOT(ISERROR(SEARCH(SearchFor,[@ Items]))))使用OR函数之所以有效,是因为如果OR的任何参数为TRUE,则OR返回TRUE,这就是我们想要的。但是不幸的是,我们必须告诉OR将其参数视为数组,这就是为什么我们必须对表达式进行数组输入的原因。关于SearchFor列表的简要说明如果SearchFor列表包含任何空单元格,则整个Found列将返回TRUE。因此,我们需要仔细定义此列表。一种选择是使用动态范围名称仅定义我们正在使用的搜索词列表。但是我不会在这里讨论这种方法。另一个选择是输入一些您知道列表不包含的搜索项,例如上面D列中显示的三组破折号。然后,当您要将其他搜索词添加到列表中时,只需用实际要使用的搜索文本替换一组破折号即可。但是,不要包含太多破折号,因为列表中的每个其他项都需要花费额外的时间来计算。因此,如果A列中的列表很长,则可能会明显降低计算速度。

0
投稿

猜你喜欢

  • 当我们在使用办公软件时,尤其是word编辑文档时,需要插入图并进行图片的排版。对很多电脑高手来说是很easy的事,但是对一些初学者来说可能是
  • Excel是我们经常使用的一款办公软件。那么excel如何批量按照指定格式插入图片呢?下面小编将为大家带来的是excel批量按照指定格式插入
  • Win10kingsoft进程结束不了怎么办?有人在自己电脑中发现了一个名为“Kingsoft”的进程,觉得它只占用内存但是没什么用,于是想
  • 很多小伙伴在Word文档中需要进行各种示范操作时,一般都需要话时间去找一段文字,复制到Word文档中,或者是自己输入一段文字,这样可以方便我
  • 为了保护文档不被其他用户查看或修改,我们可以给文档加密,那么具体要怎么做呢?下面让小编为你带来如何对word设置密码保护的方法,欢迎大家来到
  • 在执行查找操作之前,可以将查找区域确定在某个单元格区域、整个工作表(可选定此工作表内的任意一个单元格)或者工作簿里的多个工作表范围内。在输入
  • 今天有网友提到一个问题,说他在Excel2010不能输入斜杠,首先我说不可能吧,他回答是“千真万确”,赶紧试试,结果真是如些,在Excel2
  • 很多小伙伴都安装了win10系统,但是很多人都说通电后无法连接网络,给用户带来了很大的麻烦,那么如何解决呢?让我们看看。win10网络不能连
  • 众所周知,word不仅是文字编辑软件,更是功能强大的排版软件,下面小编就为大家详细介绍word制作一个简洁的文件封皮方法,不会的朋友可以参考
  • 在Word中,图形是按照添加的先后次序层层叠加的,通过对图形的叠放次序进行调整,可以创建不同的视觉效果。下面在word2003文档中设置图形
  • 微软一直在努力寻找一种正确更新Windows系统的方法,并且用户在多次Windows 10更新后都报告了问题。早些时候,Microsoft因
  • 在Excel中有个数据标识功能,可以快速圈出需要的数据,下面教你使用这个功能快速圈出大量数据中的最大值,是通过规则设置自动圈出数据。效果图:
  • 大家在使用Office2013制作Word模板的时候想要添加自己自定义的Word模板却不知道如何添加,只要把Word自定义的模板设定保存文件
  • 平时我们使用Photoshop的时候经常会需要输入自动换行的文本,那么怎么输入哪。下面由小编为您提供更多的技巧,希望能帮助您。Photosh
  • 做仓库管理的一位朋友提出的问题:他经常发表格到各个分仓库,让管理员填写商品数据,可:交上来的数据填写很不规范,时常会多出很多空白单元格,或者
  • 1、点击页码,将鼠标定位到插入页码的地方,单击出现如下所示【修改页码】【删除页码】2、选择删除页码,下拉框中有四种删除,按照要求选择即可
  • 本文介绍如何使用箭头线更加可视化地显示变化的方向,如图1所示。图1在Excel 2007及以后的版本中,通过设置系列3的箭头末端格式,很容易
  • word文档怎么悬挂缩进2字符?选中需要设置的段落选择开始/段落出现段落对话框,选择特殊格式/悬挂缩进2字符悬挂缩进展示图
  • 我们在使用excel的时候,经常会遇到一些麻烦,这就需要我们发现一些使用excel的技巧,今天这里给大家准备2条excel的技巧!彻底隐藏数
  • 宏实际上是一系列Word 命令的组合,用户可以在Visual Basic 编辑器中打开宏并进行编辑和调试,删除录制过程中录进来的一些不必要的
手机版 电脑教程 asp之家 www.aspxhome.com