首页 > 其他分享 >多工作表数据去重,VSTACK与UNIQUE函数发挥作用!

多工作表数据去重,VSTACK与UNIQUE函数发挥作用!

时间:2023-12-17 23:32:20浏览次数:33  
标签:函数 VSTACK A2 A5 发挥作用 UNIQUE 哈密瓜

1职场实例


小伙伴们大家好,今天我们来继续学习Excel在职场办公中的应用案例如何提取多个工作表中指定区域内的不重复值?这个问题实质是一个删除重复值保留唯一值的问题,但是涉及到了在多个工作表中的操作,显得不是那么的有思路。但是我们运用两个新函数VSTACK函数与UNIQUE函数就可以很轻松的解决,两个函数已经可以在金山WPS表格最新版本中使用了。


如下图所示

在工作表“1月”的表格中有一张水果名称销量表,我们发现A列水果名称数据是有重复的,比如“香蕉”出现了两次。


多工作表数据去重,VSTACK与UNIQUE函数发挥作用!_数据


在工作表“2月”的表格中也有一张水果名称销量表,我们发现A列水果名称数据也是有重复的,比如“哈密瓜”出现了两次。现在我们想要在“2月”工作表的D列统计一下“1月”和“2月”两个工作表中的A列的水果名称的不重复值。


多工作表数据去重,VSTACK与UNIQUE函数发挥作用!_数据_02


2解题思路


解决此问题的核心思路是,将两个工作表中需要去重的数据合并到一列显示,然后再进行去重即可,这就用到了两个新函数VSTACK函数与UNIQUE函数。


VSTACK函数:是Excel新增的函数,是按垂直顺序追加数组,我们可以简单的把它理解为数据汇总。


UNIQUE函数:是Excel新增的函数,它具有强大的去重功能,可以快速提取不重复的数据,操作起来很方便。



下面我们就来看一下具体操作方法。


多工作表数据去重,VSTACK与UNIQUE函数发挥作用!_函数参数_03


首先我们在“2月”工作表D2单元格输入函数公式

=VSTACK(A2:A5,'1月'!A2:A5)


VSTACK函数的作用就是把各个参数纵向堆叠在一起


函数参数

=VSTACK(数组1,[数组2]……)

它是按垂直顺序追加数组,是把各个参数纵向堆叠在一起。


本例中很好理解,我们用VSTACK函数将“2月”工作表中的A2:A5区域和“1月”工作表的A2:A5区域中的水果名称合并到一起(一列)中显示。数组溢出:

{"哈密瓜";"蟠桃";"哈密瓜";"芒果";"黄杏";"苹果";"香蕉";"香蕉"}


多工作表数据去重,VSTACK与UNIQUE函数发挥作用!_函数参数_04


我们继续完善“2月”工作表D2单元格的函数公式

=UNIQUE(VSTACK(A2:A5,'1月'!A2:A5))


UNIQUE函数:返回数据中的唯一值


函数参数

=UNIQUE(数据源,按列去重还是按行去重,提取唯一值还是去除重复项)


本例中非常好理解:我们使用UNIQUE函数从上一步VSTACK函数合并后的数组中:

{"哈密瓜";"蟠桃";"哈密瓜";"芒果";"黄杏";"苹果";"香蕉";"香蕉"}

进行去重操作,数组自动溢出得到:

{"哈密瓜";"蟠桃";"芒果";"黄杏";"苹果";"香蕉"}


多工作表数据去重,VSTACK与UNIQUE函数发挥作用!_函数参数_05

标签:函数,VSTACK,A2,A5,发挥作用,UNIQUE,哈密瓜
From: https://blog.51cto.com/u_15825298/8863776

相关文章

  • C++(std::unique_ptr)
    std::unique_ptr是C++标准库中的一种智能指针,用于管理动态分配的内存。它是一种独占拥有权(exclusiveownership)的智能指针,保证同一时刻只有一个std::unique_ptr指向特定的资源。当std::unique_ptr被销毁时,它所拥有的资源也会被释放。以下是std::unique_ptr的基本用法和......
  • unique_ptr 和 shared_ptr
    unique_ptr和shared_ptr是C++标准库中的智能指针,用于管理动态分配的对象的生命周期,以避免内存泄漏和手动资源管理的问题。unique_ptr:std::unique_ptr是一个独占所有权的智能指针,确保在任何时候只有一个unique_ptr拥有对动态分配的对象的所有权。当unique_ptr被销......
  • 2023-11-22 Invariant Violation: [app.model] namespace should be unique ==》模块
     如上图,报错原因:存在多个名为demoDataSource的模块名称导致报错解决方案:修改模块名称即可,把demoDataSource改为demoDataSource2就不会报错了扩展:该问题是由rudex引起的,redex要求数据模型(models)命名(namespace)必须不同,否则在注入该数据模型时就会报错......
  • 将字符串转换为uniqueidentifier时失败
    MicrosoftSQLServerManagementStudioExpress不支持表字段uniqueidentifier插入未指定值启用默认值。未指定时会报“将字符串转换为uniqueidentifier时失败”//2008的MSSM不支持下面的带引号,前者可以,代价是默认值是字符串转换失败了这是一个小坑,正常的要将引号去掉,Po......
  • [ABC286G] Unique Walk 题解
    洛谷题目链接At题目链接这题一看就很欧拉路径,但是怎么做呢?如果只有关键边,那么连通图首先会变成一堆连通块,这时只需要分别对每个连通块进行欧拉路径判断,但是对于不属于欧拉路径的连通块,很难对加上非关键边的情况进行扩展。如果只有非关键边,那么连通图还是变成一堆连通块,但是这......
  • F. Unique Occurrences(线段树分治+可撤销并查集)
    F.UniqueOccurrences假如我们删除所有权值为x的边,那么所有权值为x的边对答案的贡献就是\(\sumsz[u]*sz[v]\)sz表示两个联通块的大小,且(u,v)的边权为x我们可以用可撤销并查集来进行处理,简单来说就是将一条边的存在时间看作区间,然后挂到线段树上,然后遍历到每个叶子的时候进行......
  • unique使用案例及原理
    使用案例#define_CRT_SECURE_NO_WARNINGS#include<iostream>#include<cstring>#include<stdlib.h>#include<stdio.h>#include<math.h>#include<iomanip>#include<ctype.h>#include<ctime>#include<stack......
  • Codeforces Round 690 (Div. 3) C. Unique Number
    给一个正整数\(x\),需要构造一个最小的正整数\(n\)使得\(\sumdigt(n)=x\),并且\(\foralli\neqj,digt(n)_i\neqdigt(n)_j\)。首先观察到\(0\)没有贡献,且会增加位数,所以不能有\(0\)。由于每个数位只能出现一次,显然合法的\(x\)范围为\([0,\sum_{i=1}^{9}i]......
  • 泛型算法(find、count、sort、fill、unique、copy、lambda、迭代器)
    一、概述algorithm中,还有一些数值泛型算法定义在头文件numeric中。算法永远不会执行容器的操作)。1、find和count:#include<iostream>#include<algorithm>#include<numeric>#include<vector>#include<list>usingnamespacestd;usingv_int=vector<int>;usingv_s......
  • UNIQUE VISION Programming Contest 2023 Autumn(AtCoder Beginner Contest 323)
    UNIQUEVISIONProgrammingContest2023Autumn(AtCoderBeginnerContest323)A.WeakBeats解题思路:按题意模拟即可。代码:#include<bits/stdc++.h>usingnamespacestd;usingll=longlong;voidsolve(){strings;cin>>s;intn=s.size();......