在数组上使用 OR 逻辑作为 Sumproduct 中的参数

2023-11-24

我有一个相当大的数据集,我需要将多个条目组合成一个值。我的数据集包含两个数据集组合的数据,每个数据集都使用自己的 ID 和密钥。

我想用一个Sumproduct()像这样的函数:

=SUMPRODUCT(--('Raw data'!C:C=Landgebruik!A2);--('Raw data'!O:O={20;21;22;23;40});'Raw data'!S:S)

With Landgebruik!A2保存第一个数据集的 ID,我需要将第二个数据集聚合到该 ID。

'Raw data'!O:O包含第二个数据集的 ID。在上面的情况下,我需要对面积进行求和(在'Raw data'!S:S) 当第二个 ID 的值为以下任意值时:{20;21;22;23;40}。 (或逻辑)该列仅包含整数值。

除了复制还有其他方法可以解决这个问题吗--('Raw data'!O:O=20)对于数组中的所有值?

EDIT:

我现在采用的解决方法是:=SUMPRODUCT(--('Raw data'!C:C=Landgebruik!A2);--('Raw data'!O:O=20)+('Raw data'!O:O=20)+('Raw data'!O:O=21)+('Raw data'!O:O=22)+('Raw data'!O:O=23)+('Raw data'!O:O=40);'Raw data'!S:S)。但我觉得应该有一种更优雅的方式来做到这一点。


您可以使用文本搜索来实现此目的:

--NOT(ISERROR(FIND('Raw data'!O:O,"2021222340")))

但您必须小心,不要在较长的 ID 中错误地找到较短的 ID,例如如果您想在 ID { 123, 456, 789 } 中搜索,则 12 不被视为在 ID 中。所以像上面这样的简单文本搜索是行不通的。您需要一个分隔符来分隔 ID 字符串。通常我使用管道字符来达到此目的,因为我不记得它在 Excel 文件的原始文本中出现的任何情况,并且因为它使公式易于阅读:

--NOT(ISERROR(FIND("|"&'Raw data'!O:O&"|","|20|21|22|23|40|")))

例子:

'原始数据'!O:O 为 20 => |21|位于 |20|21|22|23|40|

'原始数据'!O:O 为 2 => |2|未在 |20|21|22|23|40| 中找到

(如果您的 ID 可能包含管道字符,那么您可以使用 CHR(1),这是一个早已被遗忘的 SOH 的 ASCII 代码,表示标头的开始;当然,它的可读性较差。)

整个公式:

=SUMPRODUCT(--('Raw data'!C:C=Landgebruik!A2),--NOT(ISERROR(FIND("|"&'Raw data'!O:O&"|","|20|21|22|23|40|"))),'Raw data'!S:S)

(抱歉,我的 Excel 使用 , 而不是 ;)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在数组上使用 OR 逻辑作为 Sumproduct 中的参数 的相关文章

  • Excel VBA 中.Delete 和.Clear 的区别?

    有什么区别Worksheets 1 Cells Delete and Worksheets 1 Cells Clear 我问这个是因为我一直用 Clear清除我的工作表内容 但在我之前的帖子中我发现Worksheets 1 Cells De
  • 根据当前工作簿中的匹配值编辑主工作簿中的单元格

    这里的目标是比较两个工作簿之间 A 列中的值 当前工作簿是 xlsm 目标工作簿是 xlsx 如果找到任何匹配项 匹配值同一行的 E 列中的值在目标工作簿中发生更改 在这种情况下 必须将工作簿分开 我决定通过选择当前工作簿 A2 中的第一个
  • 用户窗体上的类对象 TextBox 可用方法

    我注意到 当我为文本框创建类模块并在表单上使用它时 通过在表单 init 事件中通过 VBA 添加 Enter 或 Exit 方法都不可用 当然 如果我只是在表单中添加一个文本框 我可以让 DblClick 方法正常工作 因此我的类设置正确
  • VBA 激活 Internet Explorer 窗口

    我正在制作一个宏 用于打开 Internet Explorer 导航并登录网站 一切正常 但我需要将 IE 窗口放在前面并激活它 这样我就可以使用SendKeys在上面 我发现网站和视频在名为的命令上有不同的方法AppActivate我已经
  • 如何高效打开巨大的excel文件

    我有一个 150MB 的单页 Excel 文件 在一台非常强大的机器上使用以下命令打开大约需要 7 分钟 using python import xlrd wb xlrd open workbook file sh wb sheet by
  • 使用 R Shiny 从 XLConnect 下载 Excel 文件

    有没有人尝试过使用 R Shiny 中的下载处理程序通过 XLConnect 下载新创建的 Excel 文件 在 ui R 中有一行不起眼的行 downloadButton downloadData Download 在 server R
  • Perforce Excel 文件差异

    我有一堆 excel 文件放在 perforce 上 我想对这些 excel 文件进行 diff 类似于我在 perforce 中对其他文件 如 java cs 等 所做的操作 我尝试寻找一个插件 发现 P4OFC 只适合对 word 文件
  • 如何使用 Nodejs 创建 Excel 文件?

    我是一名 Nodejs 程序员 现在我有一个数据表 我想将其保存为 Excel 文件格式 我该怎么做呢 我找到了一些 Node 库 但其中大多数是 Excel 解析器而不是 Excel 编写器 我使用的是 Linux 服务器 因此需要一些可
  • 如何找到特定程序的安装目录?

    我已经成功地编写了一些用于工作的 VBA 宏 这些宏基本上创建了一个数据文件 将其提供给一个程序并对该程序的输出进行后处理 我的问题是程序安装路径是硬编码在宏中的 并且安装在我同事的计算机上可能会有所不同 我首先想到的是 我可以从每个人那里
  • VBA 有没有办法了解未使用的变量?

    标准 VBA 编辑器中是否有工具 方法或设置来警告已被修改的变量Dim med 但没有被使用 MZ Tools http www mztools com index aspx将搜索您的代码并告诉您哪些内容未被使用 VBA的版本可以找到her
  • 将包含宏的工作簿复制到不带宏的工作簿

    我能够复制工作簿 复制到所需位置 其中在后台包含宏 该副本还包含相同的宏 我的问题是我不希望这个重复的工作簿包含宏 谁能告诉怎么做吗 先感谢您 将您的工作簿保存为无宏 即简单地保存为 Excel 工作簿 对于我的 Excel 2007 这是
  • VBA 中 AND 函数如何工作?

    如果这是一个愚蠢的问题 我很抱歉 但是 Excel VBA AND 函数是否检查其中的每个条件然后继续 或者在第一个 FALSE 条件处停止而不检查其他条件 我想知道出于优化目的 但到目前为止在网上没有找到任何相关信息 提前致谢 示例 如果
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • 使用 OpenPyXL 迭代工作表和单元格,并使用包含的字符串更新单元格[重复]

    这个问题在这里已经有答案了 我想使用 OpenPyXL 来搜索工作簿 但我遇到了一些问题 希望有人可以帮助解决 以下是一些障碍 待办事项 我的工作表和单元格数量未知 我想搜索工作簿并将工作表名称放入数组中 我想循环遍历每个数组项并搜索包含特
  • 我如何以更好的方式编码而不是像这样的VBA编码

    我正在 Excel 中创建一个仪表板 但是我想知道是否有比这更好的编码方式 我想对其进行模块化 而不是这样做以使其更加整洁 Private Sub Afford If af Value True Then af afr Value Shee
  • 使用 FindElementbyXpath() 获取 Selenium Basic 中可填充框的行和列名称

    我正在使用 Selenium Basic 将电子表格中的文本填充到网站中 网站的html代码是这样的 div table cellspacing 0 border 1 style width 99 tr th style font weig
  • Android Excel CSV 的 MIME 数据类型是什么?

    我尝试了 text csv 甚至 application vnd ms excel 但 Excel 不会显示在选择列表中 很多其他应用程序也可以 void shareCsv Uri uri Context context Intent in
  • 使用 ADODB 连接从关闭的工作簿中检索数据。某些数据被跳过?

    我目前正在编写一些代码 可以通过 ADODB 连接访问单独的工作簿 由于速度的原因 我选择了这种方法而不是其他方法 下面是我的代码 Sub GetWorksheetData strSourceFile As String strSQL As
  • 使用PHP从doc、xls文件中读取数据

    我想知道是否可以从 doc 和 xls 文件中读取数据并将 将内容读取到图像文件中 创建文档的页面样本 例如 我有一些文件希望我的客户购买 所以我需要自动创建小图像 例如我的文档样本 我们将不胜感激您的帮助 对于读取 xls 文件 我真的推
  • 如何将 .xlsx 文件上传到 jenkins 作业

    如何将 xlsx 文件作为构建参数上传到 jenkins 作业 我尝试使用文件参数 但我发现该文件正在丢失其扩展名或原始格式 有什么方法可以从 jenkins UI 将 excel 文件上传到 jenkins 作业吗 In the file

随机推荐

  • 参数化 sql 查询 - asp.net / c#

    所以我最近了解到我绝对应该使用参数化查询来避免 SQL 注入等安全问题 一切都很好 我已经成功了 此代码显示了我如何执行此操作的一些代码 param1 new SqlParameter param1 ParameterName userna
  • 如何通过java代码设置JMX远程端口系统环境参数进行远程监控?

    我有一个程序需要动态 即在运行时 打开一个可用的套接字并在其上启动 JMX 代理 此 JMX 参数是在 Java 代码内部设置的 而不是通过命令行设置的 这很好用 此后需要通过 Java Visual VM 进行监控 即发出 JMX 命令等
  • Get 和 post 方法与 HTTP 和 REST 相比的区别

    我是 REST 新手 我想知道什么时候使用get方法 什么时候使用post方法 在我的文献调查过程中 我接触到了这些知识 实际上 当我搜索 HTTP get 和 post 方法时 我读到 get 不对 URL 进行编码 而 post 对 U
  • 通过点击事件查找元素

    如何通过 jQuery 2 2 1 找到每个带有点击事件的元素 这似乎不再起作用 console log data this 0 events Try each function index value if data value 0 ev
  • 调用 $this->load->view() 后停止执行

    在Codeigniter中 我们如何在加载视图后停止执行 我试过这个 function index this gt load gt view myView die do not execute next code 但它导致空白屏幕 http
  • 如何在 bash curl 语句中包含“&”字符

    我正在尝试在 bash 中使用curl来下载网页 但是 URL 中的符号没有像我想要的那样被解释为字符 关于如何让 bash 相信该符号的任何想法 只是一个无聊的角色 没什么特别的 将整个 URL 放在双引号内应该可以解决您的问题
  • 我可以在不知道绑定本身的情况下更改 DataTrigger 中绑定的属性吗?

    我有一个TextBox如果框未聚焦 则格式化数字 但在编辑时保持数字未格式化 这是我想要的多个数字文本框的样式 但它们都包含不同的文本绑定 常规文本设置器和触发式文本设置器之间的唯一区别是触发式文本设置器具有StringFormat N2在
  • 我可以从 servlet 生成线程吗?

    在开始讨论我的主要问题之前 我想问一个基本问题 假设我正在运行一个简单的 Java 程序 它在 main 函数中生成一个线程 当main函数完成后 线程会继续运行吗 线程之间是否有父 子关系的概念 我有一个 servlet 需要很长时间才能
  • Qtableview 中的用户可编辑复选框

    我想在中实现用户可编辑复选框QTableView它是使用 QAbstractModel 创建的 我可以分配选中和未选中的复选框 但无法使其可编辑 标志设置为QItemIsUserCheckable 您可以通过实施模型轻松做到这一点setDa
  • 是否可以选择前面没有文本的元素?

    我想要一个匹配的 CSS 选择器 code in p code foo code bar p 但不是 code in p foo code bar code p code first child不起作用 两者都匹配 只是因为我认为这是不可能
  • 数据库架构比较错误:“版本存储内存不足”

    以下是我在 Visual Studio 2013 Professional w Update 3 中进行架构比较时收到的错误 我使用的是版本 2008 R2 DB 服务器 并且使用的是 SSMS 2014 这个错误持续了几周 并且越来越频繁
  • 带有 Service Worker 和 sw-precache 的“新版本可用”

    我正在尝试使用sw precache 但我一定做错了什么 我主要使用以下提供的演示代码github 仓库并且似乎无法获得应用程序的更新 一旦第一次被缓存 它就不会检查新版本 我期望当我发布新的 Service Worker 时 浏览器会请求
  • 使用 CRTP 模拟静态多态中的纯虚函数是否可能?

    我正在尝试使用 CRTP 实现编译时多态性 并希望强制派生类实现该函数 目前的实现是这样的 template
  • Java泛型:包含泛型的数组[重复]

    这个问题在这里已经有答案了 可能的重复 Java 操作方法 创建通用数组 创建通用数组时出错 我的任务是用 Java 编写一个哈希表 它必须适用于任何数据类型 我编写的代码的规则如下 哈希表必须有一个数组作为底层数据结构 其大小在构造对象时
  • 为什么 [01-12] 范围没有按预期工作?

    我正在尝试使用范围模式 01 12 在正则表达式中匹配两位数字 mm 但这并不按预期工作 您似乎误解了正则表达式中字符类定义的工作原理 匹配任何字符串01 02 03 04 05 06 07 08 09 10 11 or 12 这样的事情有
  • Angular 5 拦截器不会拦截从库发出的请求

    我在 Angular 5 中有一个有效的拦截器 它在 App module 的提供程序中注册 并正确拦截从应用程序发出的所有请求 问题是它不会拦截应用程序使用的库发出的请求 我正在使用一个开源库 NGX Jsonapi 并且需要拦截器在该库
  • Android 软键盘在全屏时隐藏来自 CordovaWebView 的输入

    我有一个 CordovaWebView 它呈现一些 html 表单 当我关注输入字段时 Android 的软键盘会弹出 对于某些字段 根据它们的位置 它会位于其顶部 基本上 它不会调整 CordovaWebView 的布局大小 无论我做什么
  • @OrderBy 导致 java.lang.ClassCastException:antlr.CommonToken 无法转换为 antlr.Token [重复]

    这个问题在这里已经有答案了 我正在尝试使用 OrderBy运行在 Spring MVC 项目上的注释JBoss EAP 6 1 server 我有 2 个项目 第一个项目名为model gen wifipnsd并且它只包含模型类由第二个项目
  • webdriver:获取元素的xpath?

    是否可以返回 WebElement 的 xpath 不是直接来自 WebDriver 但如果您确实需要 您可以伪造它 public String getElementXPath WebDriver driver WebElement ele
  • 在数组上使用 OR 逻辑作为 Sumproduct 中的参数

    我有一个相当大的数据集 我需要将多个条目组合成一个值 我的数据集包含两个数据集组合的数据 每个数据集都使用自己的 ID 和密钥 我想用一个Sumproduct 像这样的函数 SUMPRODUCT Raw data C C Landgebru