EXCEL,多条件查询数字/文本内容的4种方法

目录

1 问题:如何根据多条件查询到想要的内容

2 方法总结

2.1 方法1: sumif() 和sumifs() 适合查找符合条件的多个数值之和

2.2  方法2:使用lookup(1,0/((区域1=条件1)*(区域2=条件2)*....),结果查询区域) 

2.3 方法3:使用 index()+match()+数组公式

2.4  方法4:vlookup()+if()+数组公式


1 问题:如何根据多条件查询到想要的内容

  • 比如下面的问题
  • 需要同时根据3个条件来查询,其他列D,E的内容
  • 一般情况下,match(), vlookup都只能支持单条件查询

2 方法总结

下面的数组公式其实尽量不要直接用整列,算起来会有点慢,锁定要查的列的上下限更节省一些

如果是需要查询符合条件的多个数字之和

  • 使用sumif()  sumifs() 可查询和汇总数字,支持汇总多条符合条件的数据之和。
  • 使用sumif()  sumifs() 无法查询文本,会返回0

如果是需要查询符合条件的 数字/文本string,有且只有1个

  • 使用lookup(1,0/(),range()) 
  • 使用match(条件1&条件2&条件3,区域1&区域2&区域3,0)
  • 使用vlookup(条件1&条件2&条件3,if({1,0},区域1&区域2&区域3,结果区域, 偏移列数, false)

2.1 方法1: sumif() 和sumifs() 适合查找符合条件的多个数值之和

  • sumifs() 只适合查找数字,
  • 查数值不光可以查1个数据,还可以汇总多个符合条件的数据之和
  • 但是不适合查找文本字符串类型的内容,查找文本只会返回0

2.2  方法2:使用lookup(1,0/((区域1=条件1)*(区域2=条件2)*....),查询区域)结果查询区域) 

  • 这个要特别注意,1,0的用法
  • lookup(1,0/((区域1=条件1)*(区域2=条件2)*....),结果查询区域)
  • 要注意,分母的多个条件是要大括号括起来一起
  • 要注意,分母的多个条件是要相乘的关系
  • 原理解释
  • 符合条件的分目为1,0/1=0,而不符合条件的分母为0,0/0

2.3 方法3:使用 index()+match()+数组公式

  • 也使用了辅助列的方法
  • &&&可以直接做辅助列,和被查询多列作为区域

2.4  方法4:vlookup()+if()+数组公式

  • 神奇之处,在于用了if({1,0},区域1,区域2)
  • 因为{1,0}是个数组,而if({1,0},区域1,区域2) 就表示多个区域的组合,这样可以任意组合任何区域!
  • 公式IF({1,0,0},A:A&B:B&C:C,E:E),2 中{1,0,0}是个数组,
    也就是让if执行3次,然后再吧这次的结果加起来形成一个新的区域
    IF({1,0,0} 必须第1个是1,因为要以查询的index区域开始向右查询,这个是vlookup的特性
    然后后面的数字2,3是指vlookip要便宜的列数量,这个需要对应{1,0,0}来
    比如对于{1,0,0},前面1列是合并后的A&B&C列,而第2,3列都是E列
    比如对于{1,1,0},前面1列是合并后的A&B&C列,而第2也是是合并后的A&B&C列,只有第3列都是E列
     

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/23153.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用redis的一些心得

1.可以编写xx.bat文件去快速启动redis 例如:服务端启动.bat redis-server.exe redis.windows.conf redis-server.exe redis.windows.conf --启动redis服务端的命令(并按照默认的配置方式) redis-cli.exe -h localhost -p 6379 -a 123456--启动…

广西茶叶元宇宙 武隆以茶为媒 推动茶文旅产业融合发展

8月4日,重庆市武隆区启动为期3天的“武隆首届玩茶荟”。本次活动以“中国最美玩茶地——武隆”为主题,吸引众多国内知名专家、茶企和茶馆相关负责人,共同探索武隆茶文旅融合发展新路径和新业态。 广西茶叶元宇宙:广西茶叶元宇宙 …

React安装ant design组件库,并使用

ant design是一个很棒的组件库,官方地址:快速上手 - Ant Design 但是如何在React里面用起来,好像并不是很顺畅,没有像Vue里面那么友好,因为我踩过这个坑,虽然安装很简单,但是想要出样式&#x…

合并两个有序链表(leetcode)

题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4]思路 每次递归都会比较当前两个节点的值,选择较小的节点作为合并后的链…

edge://settings/defaultbrowser default ie

Microsoft Edge 中的 Internet Explorer 模式 有些网站专为与 Internet Explorer 一起使用,它们具有 Microsoft Edge 等新式浏览器不支持的功能。 如果你需要查看其中的某个网站,可使用 Microsoft Edge 中的 Internet Explorer 模式。 大多数网站在新…

读取视频关键帧图片

思路&#xff0c;用video播放视频到某一秒&#xff0c;之后用canvas把video画成一张图片&#xff0c;从而在客户端得到视频关键帧图片&#xff0c;实现还有一些细节处理 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"…

判定是否互为字符重排、回文排列

题1&#xff1a;判定是否互为字符重排 给定两个由小写字母组成的字符串 s1 和 s2&#xff0c;请编写一个程序&#xff0c;确定其中一个字符串的字符重新排列后&#xff0c;能否变成另一个字符串。 输入: s1 "abc", s2 "bca" 输出: true 输入: s1 &quo…

Java:如何破坏类加载器的双亲委派机制?

本文重点 我们前面分析过loadClass方法,我们可以发现,这个方法的逻辑就是双亲委派机制,也就是说只要不破坏这个方法,那么就不会破坏双亲委派机制。如果要想破坏双亲委派机制,我们需要在类中重写loadClass方法,只要这样,那么就不会走双亲委派机制了。 破坏还是不破坏双…

2023-08-05力扣今日五题-好题

链接&#xff1a; 剑指 Offer 52. 两个链表的第一个公共节点 题意&#xff1a; 如题 解&#xff1a; 非常有趣的双指针 首先我们不管他们是否有公共段啊&#xff0c;我们要知道一个指针从A出发走到A结尾&#xff0c;再从B出发走到B结尾&#xff0c;和从B出发最终到A结尾是…

麦肯锡战略思维四大原则

麦肯锡战略思维四大原则 曾任职麦肯锡、安永等国家国际知名咨询机构的周正元&#xff0c;在其著作《麦肯锡结构化战略思维》将其系统的整理呈现出来&#xff0c;便于学习和使用。 模型介绍 工作中的你&#xff0c;是不是经常遇到复杂问题&#xff0c;六神无主&#xff1f; 专业…

ObjectMapper常见用法(Intro to the Jackson ObjectMapper)

maven依赖 <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-dataformat-xml</artifactId><version>2.14.2</version> </dependency>Data AllArgsConstructor NoArgsConstructor public class…

JAVA语言:如何自定义类加载器?

本文重点 前面的课程中&#xff0c;我们已经学习了双亲委派机制&#xff0c;如果想要自定义一个类加载器&#xff0c;那么我们只需要继承ClassLoader&#xff0c;并且定义好自己的findClass就可以了&#xff0c;也就是自己的类加载器是如何进行工作的&#xff0c;而loadClass就…

C++ operator关键字的使用(重载运算符、仿函数、类型转换操作符)

目录 定义operator重载运算符operator重载函数调用运算符operator类型转换操作符 定义 C11 中&#xff0c;operator 是一个关键字&#xff0c;用于重载运算符。通过重载运算符&#xff0c;您可以定义自定义类型的对象在使用内置运算符时的行为。 operator重载用法一般可以分为…

Java thymeleaf bug排查记录

刚学Java 做项目时报了一个错误 一时间看的莫名其妙 EL1008E: Property or field createTime cannot be found on object of type java.util.HashMap - maybe not public or not valid? 随即向上排查至第一个报错&#xff0c;发现是thymeleaf渲染时报错。 Exception proces…

【Python从入门到进阶】31、使用JSONPath解析淘票票网站地区接口数据

接上篇《30、JSONPath的介绍和使用》 上一篇我们介绍了JSONPath的基础和具体使用&#xff0c;本篇我们来具体使用JSONPath&#xff0c;来解析淘票票网站的地区接口数据。 一、引言 1、JsonPath的作用和用途&#xff1f; JsonPath是一种用于在JSON数据中进行查询和提取的表达…

【Jmeter】压测mysql数据库中间件mycat

目录 背景 环境准备 1、下载Jmeter 2、下载mysql数据库的驱动包 3、要进行测试的数据库 Jmeter配置 1、启动Jmeter图形界面 2、加载mysql驱动包 3、新建一个线程组&#xff0c;然后如下图所示添加 JDBC Connection Configuration 4、配置JDBC Connection Configurati…

【GEMM预备工作】行主序和列主序矩阵的内存中的连续性,解决理解问题

在内存存储中&#xff0c;默认矩阵是按照行优先储存的&#xff0c;即矩阵的每一列在内存中是连续的。行优先矩阵储存中行数据是不连续的。 而对于列主序的矩阵&#xff0c;是按照列优先储存的&#xff0c;即矩阵的每一行在内存中是连续的。列优先矩阵储存中列数据是不连续的&am…

OPENCV C++(一) 二进制和灰度原理 处理每个像素点值的方法

#include <opencv2/opencv.hpp> using namespace std; using namespace cv;必须包含的头文件&#xff01; 才能开始编写代码 读取相片 一般来说加个保护程序 不至于出error和卡死 Mat image imread("test.webp"); //存放自己图像的路径 if (image.empty()){p…

【PyTorch】PyTorch、Cuda 的安装和使用

原文作者&#xff1a;我辈李想 版权声明&#xff1a;文章原创&#xff0c;转载时请务必加上原文超链接、作者信息和本声明。 文章目录 前言一、Anaconda 中安装 PyTorch 和 CUDA二、检查PyTorch和CUDA版本三、PyTorch的基本使用四、PyTorch调用cuda五、Matplotlib绘制Pytorch损…

SOLIDWORKS软件如何批量加图号

当我们在做模型设计时&#xff0c;不管是新研发还是改型设计&#xff0c;都需要规范模型的属性信息&#xff0c;其中必不可少的就是图号或代号。但是一套产品是由很多个零件组成的&#xff0c;每个零件的属性都需要去规范&#xff0c;一个一个改其实工作量也不小&#xff0c;今…