将 SUMIFS 与多个 AND OR 条件结合使用

2023-11-26

我想创建一个简洁的 Excel 公式,根据一组 AND 条件和一组 OR 条件对列求和。

我的 Excel 表包含以下数据,并且我对列使用了定义的名称。

  • 报价值(工作表!$A:$AN)保存会计值。
  • Days_To_Close (Worksheet!$B:$B) 包含一个生成数字的公式。
  • 推销员 (Worksheet!$C:$C) 包含文本并且是一个名称。
  • Quote_Month (Worksheet!$D:$D) 包含一个公式 (=TEXT(Worksheet!$E:$E,"mmm-yy")),用于将另一列中的日期/时间数字转换为基于文本的月份引用。

如果 Salesman 等于 JBloggs 并且 Days_To_Close 等于或小于 90 并且 Quote_Month 等于以下之一(10 月 13 日、11 月 13 日或 12 月 13 日),我想要对 Quote_Value 进行求和。

目前,我已经做到了这一点,但它包括大量重复,我认为我不需要。

=SUM(SUMIFS(Quote_Value,Salesman,"=JBloggs",Days_To_Close,"<=90",Quote_Month,"=Oct-13")+SUMIFS(Quote_Value,Salesman,"=JBloggs",Days_To_Close,"<=90",Quote_Month,"=Nov-13")+SUMIFS(Quote_Value,Salesman,"=JBloggs",Days_To_Close,"<=90",Quote_Month,"=Dec-13"))

我想做的是更像下面的东西,但我无法计算出正确的语法:

=SUMIFS(Quote_Value,Salesman,"=JBloggs",Days_To_Close,"<=90",Quote_Month,OR(Quote_Month="Oct-13",Quote_Month="Nov-13",Quote_Month="Dec-13"))

该公式不会出错,只是返回 0 值。但如果我手动检查数据,结果是不正确的。我什至尝试使用 TRIM(Quote_Month) 来确保空格没有渗入数据,但我的扩展 SUM 公式有效的事实表明数据没问题,这是一个语法问题。有人能引导我走向正确的方向吗?


您可以使用SUMIFS像这样

=SUM(SUMIFS(Quote_Value,Salesman,"JBloggs",Days_To_Close,"<=90",Quote_Month,{"Oct-13","Nov-13","Dec-13"}))

The SUMIFS函数将返回一个包含 3 个值的“数组”(“Oct-13”、“Nov-13”和“Dec-13”各一个),因此您需要SUM对该数组求和并给出最终结果。

小心这个语法,你最多只能有two公式中的条件带有“OR”条件...如果有两个条件,那么在一个条件中,您必须将条件与commas,在另一个与分号.

如果您需要更多,您可以使用SUMPRODUCT with MATCH,例如在你的情况下

=SUMPRODUCT(Quote_Value,(Salesman="JBloggs")*(Days_To_Close<=90)*ISNUMBER(MATCH(Quote_Month,{"Oct-13","Nov-13","Dec-13"},0)))

在该版本中,您可以使用添加任意数量的“OR”条件ISNUMBER/MATCH

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

将 SUMIFS 与多个 AND OR 条件结合使用 的相关文章

  • 由于直接引用范围而不是通过中间变量而导致 Excel VBA 运行时错误 450

    当我尝试直接引用某个范围内的值时 出现运行时错误 450 但如果我使用中间变量 它就会起作用 我不明白为什么 所以我担心在将来的某个时候我会再次遇到错误而不知道为什么 我尝试过使用 With End With 块 但当我直接引用范围时它仍然
  • java实现excel价格、收益率函数[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 选择在 Excel 宏(VBA 中的范围对象)中具有值的列

    如何修改 VBA 中的这一行以仅选择具有值的列 Set rng Range A1 Range A65536 End xlUp SpecialCells xlCellTypeVisible 我不认为我做的事情是正确的CountLarge财产是
  • C++、三元运算符、std::cout

    如何使用 C 用三元运算符编写以下条件 int condition1 condition2 condition3 int double result int or double std cout lt lt condition1 resul
  • 使用 VBA 通过简单命令从非连续范围的并集获取值到数组中(无循环)

    我有以下任务 表面上很简单 使用 VBA 将电子表格上多个列的值复制到二维数组中 为了让生活更有趣 这些柱子并不相邻 但它们的长度都相同 显然 可以通过依次循环每个元素来做到这一点 但这看起来非常不优雅 我希望有一个更紧凑的解决方案 但我很
  • For...VBA 中的下一个循环超出限制

    我正在使用一个For Next循环填充数组 如下所示 ReDim array 1 to 100 1 to 100 For i 1 to 100 Next i But the i计数器似乎总是转到 101 而不是停止在 100 因此 这会在我
  • 如何使用 Excel Interop 获取筛选行的范围?

    我正在为我的项目使用 Excel Interop 程序集 如果我想使用自动过滤器 那么可以使用 sheet UsedRange AutoFilter 1 SheetNames 1 Microsoft Office Interop Excel
  • 如何使用Matlab将数据保存到Excel表格中?

    我想将数据以表格形式保存在 Excel 工作表中 它应该看起来像 Name Age R no Gpa Adnan 24 18 3 55 Ahmad 22 12 3 44 Usman 23 22 3 00 每次当我执行我的文件时类数据 m 下
  • 查找并替换目录中所有 Excel 文件工作簿中的字符串

    我正在编写 VBA 代码来替换位于特定目录中的多个 Excel 文件 工作簿 中的特定字符串 我尝试在 Stack Overflow 上搜索 找到答案 但这与通过 Excel 中的宏替换文本文件中的字符串有关 相同的链接是查找并替换文件中的
  • VBA根据单元格的值是否为零显示/隐藏行

    我有一个 Excel 工作表 我想根据另一个单元格中的值隐藏或取消隐藏某些行 简而言之 整个事情应该取决于单元格中的值C2 D2 E2 If C2 is blank我想rows 31 to 40被隐藏 如果是的话不为空 他们需要是visib
  • 使用 pythoncom 在 Python 进程之间编组 COM 对象

    我希望有人可以帮助我从 Python 进行编组跨进程调用到 Excel 我有一个通过 Python 启动的 Excel 会话 我知道当需要从单独的 Python 进程访问它时 该会话将会启动并运行 我已经使用编组让一切按预期工作CoMars
  • 使用 Apache POI Excel 写入特定单元格位置

    如果我有一个未排序的参数 x y z 列表 是否有一种简单的方法将它们写入使用 POI 创建的 Excel 文档中的特定单元格 就好像前两个参数是 X 和Y 坐标 例如 我有如下行 10 4 100 是否可以在第 10 行第 4 列的单元格
  • 如何使用VBA根据条件删除Excel中的行?

    我目前正在构建一个宏来格式化数据表并删除不适用的数据行 具体来说 我希望删除列 L ABC 的行以及删除列 AA DEF 的行 到目前为止 我已经实现了第一个目标 但还没有实现第二个目标 现有代码是 Dim LastRow As Integ
  • 文件夹.文件的相对路径

    我有一个 Excel 文件 在同一文件夹中还有一个包含我想要包含的 CSV 文件的文件夹 使用 来自文件夹 查询 第一步将给出以下查询 Folder Files D OneDrive Documents Health Concept2 现在
  • 如果总和为 0,则查找并删除带标题的最后一列

    我想创建一个宏 查找带有标题的最后一列 并仅当该列的总和等于零时才将其删除 到目前为止 这是我尝试过的 Dim LastCol As Long Dim i As Long With ThisWorkbook Sheets Sheet1 Fo
  • VBA在多个文件夹中搜索特定子文件夹并移动其中的所有文件

    你能帮助我吗 我想要一个宏vba来搜索SPECIFIC例如 所有存在并移动其文件的文件夹和子文件夹之间的子文件夹 Xfolder P Desktop Folder1 subfolder SUBFOLDER1 Xfolder 我正在使用 VB
  • 支持 >65k 行的 Excel VBA SQL 驱动程序

    在 Excel 2010 中通过 VBA 查询 Excel 数据时 我遇到一个有趣的问题 我正在使用这些驱动程序连接到 xls 或 xls x m 文件 Sub OpenCon ByRef theConn As Connection ByV
  • 返回条件格式化单元格内部颜色的函数

    我想要一个返回条件格式单元格颜色索引值的函数 它用于检查一行中的多个单元格 如果它们使用条件格式突出显示 则需要执行操作 检查单元格中是否有颜色比创建覆盖条件的组合条件公式更简单所有细胞的 或者说我是这么想的 尽管代码在消息框中有效 但下面
  • 替换字符串变量中的多个字符 (VBA)

    如何替换字符串变量中的多个内容 这是我在 VBA 中的示例函数 Private Function ExampleFunc ByVal unitNr As String If InStr unitNr OE gt 0 Then unitNr
  • 如何修复日期过滤器 VBA,因为它没有拾取我范围内的所有日期

    我正在尝试创建一个过滤器来过滤掉我选择的日期内的所有日期 我选择的日期将始终反映整个月 例如 如果我需要 2019 年 5 月的数据 我将输入开始日期为 01 05 2019 结束日期为 31 05 2019 我的数据过滤器将需要选取经过我

随机推荐

  • clojure.java.jdbc/延迟查询大结果集

    我正在尝试从数据库读取数百万行并写入文本文件 这是我的问题的延续数据库转储到文本文件有副作用 我现在的问题似乎是在程序完成之前不会发生日志记录 我没有懒惰处理的另一个指标是 在程序完成之前根本不会写入文本文件 根据 IRC 提示 我的问题可
  • 如何在不破坏 Maven 发布插件的情况下传递 javac 多个命令行参数(其中一些包括冒号)?

    当我忘记在 a 中声明serialVersionUIDs 时 我想让我的 Maven 构建失败Serializable班级 和javac 这很容易 javac Xlint serial Werror Source java 直接将其转换为
  • 当您有行跨度时替换行颜色

    我有这个 HTML table class altRowTable 这工作正常 直到我有一些行包含rowspan 各行不一致 所以我有这样的东西 下面的 代表一个空格 不能真正在 SOF 中做表 ID name Number 1 joe 1
  • 释放字符串后仍然可以打印它吗?

    我正在学习和测试 C 中的内存分配 我想测试如果free 叫做 我预计可能存在分段错误或指针NULL当我运行下面的程序后 但是 我仍然可以成功打印输出中的字符串 我也尝试过免费str两次 然后输出 2 发生错误 看起来之前分配的内存已经成功
  • 使用 JavaScript 或 jQuery 监听 Youtube 事件

    我有一个滑块 其中包含 4 个通过 iframe 嵌入代码嵌入的 YouTube 视频 http www youtube com embed i enablejsapi 1 我正在努力使onStateChange四个视频中任何一个的事件调用
  • 无法添加对 Outlook 2016 (Office 365) Interop (16.0.0.0) 的引用

    我正在尝试在 C NET 4 6 1 WPF 项目中添加对 Microsoft Outlook 16 0 对象库 的引用 因为我安装了 Office 2016 以前版本的对象库与 2016 版 Office 不兼容 如果我使用 Excel
  • 由于文本框 onblur 事件中的警报框而导致按钮单击事件丢失

    我创建了一个简单的 Web 表单 其中包含一个文本框和一个按钮 我已经捕获了文本框的 onblur 事件
  • 使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证

    伙计们 我的 asp net 3 5 应用程序中有一个用户控件 我在按钮单击事件上传递一些纯文本 按钮位于用户控件中 但是当我触发事件时 我收到以下错误 回发或回调参数无效 使用启用事件验证 在配置或 在 页 出于安全目的 这 功能验证参数
  • 使用Java在Windows中获取唯一的文件ID?

    我正在寻找一种在 Java 应用程序中获取唯一文件 ID 的方法 并遇到了这个 Windows 中唯一的文件标识符 现在 我尝试了 Ashley Henderson 本人 提出问题的人 提供的答案 并且在 C 中运行良好 但我需要在 Jav
  • 如何将 Visual Studio 2017 与 TFS Visual Studio 构建步骤结合使用

    我正在运行 TFS 2015 并使用 Visual Studio 构建步骤 在开发机器上 我转而使用 Visual Studio 2017 因此我也想使用 Visual Studio 2017 进行 TFS 构建 我在生成服务器上安装了 V
  • Python解压字节流?

    情况如下 我从 Amazon S3 获取压缩的 xml 文档 import boto from boto s3 connection import S3Connection from boto s3 key import Key conn
  • python del 没有释放所有内存

    在我的 python 程序中 我使用pandas读取 csv 文件并存储在内存中 data pandas read csv data csv 在运行上述命令之前 我使用以下命令检查可用内存free m输出是1704 运行上述命令后输出为72
  • 将凹壳算法转换为 C#

    所以我试图将这里找到的算法翻译为凹壳 http repositorium sdum uminho pt bitstream 1822 6429 1 ConcaveHull ACM MYS pdf 第 65 页 我已经阅读了整个内容 但我不知
  • 在C++中调用私有方法

    这纯粹是一个理论问题 我知道如果有人将一个方法声明为私有 您可能不应该调用它 我设法调用私有虚拟方法并更改实例的私有成员 但我不知道如何调用私有非虚拟方法 不使用 asm 有没有办法获取方法的指针 还有其他方法吗 编辑 我不想更改类定义 我
  • puppeteer:单击 Shadowroot 中的按钮

    我在测试环境中对 Shadowroot 中的元素执行操作时遇到困难 假设我有一个网络组件
  • 从 Java 匿名类访问“this”

    给出以下代码 public interface Selectable public void select public class Container implements Selectable public void select pu
  • ASP.NET MVC Razor 视图与 AngularJS

    我在视图中使用 ASP Net MVC 和 Razor 语法 但由于对性能增强的研究很少 我发现 View Engines 将 razor 代码编译为 HTML 需要花费一些时间 那么在视图中使用 AngularJS 而不是 razor 语
  • 如何将 C:\Users 外部的卷映射到 Windows 上的容器?

    我正在进行服务器端开发 我的工作区位于 D 中 因为我不喜欢在 C 上存储数据 但只是找不到将 d Workspace 映射到 home workspace 的方法 我尝试通过以下方式创建从 C Users username 到 D Wor
  • 如何在 Firefox 中禁用 content_script.js?

    到目前为止 我还没有在我的 Firefox 中安装任何插件 也没有使用任何额外的 JS 脚本 但我不知道这个content script js已启用并在控制台中打印不必要的消息 如下所示 content script runtime onM
  • 将 SUMIFS 与多个 AND OR 条件结合使用

    我想创建一个简洁的 Excel 公式 根据一组 AND 条件和一组 OR 条件对列求和 我的 Excel 表包含以下数据 并且我对列使用了定义的名称 报价值 工作表 A AN 保存会计值 Days To Close Worksheet B