乐于分享
好东西不私藏

冷知识:一直被认为抄袭的WPS,或许才是办公软件的开山鼻祖,真正的国产替代

冷知识:一直被认为抄袭的WPS,或许才是办公软件的开山鼻祖,真正的国产替代

与 30万 粉丝一起学Excel
微软的Office名气太大了,导致绝大多数人(包含卢子在内),一直以来都认识WPS是抄袭微软的。直到今天,才发现也许事实并非如此。
下面是来自腾讯元宝的搜索结果,WPS比Office还早1年发布。
金山软件的WPS1.0发布于1988年。
微软的Office1.0发布于1989年。
WPS过去很长一段时间确实功能比不上Office,不过现在在很多方便都足矣取代Office,甚至更优秀,比如函数公式方面,还是通过实际案例说明。
1.人民币大写
直接设置单元格格式即可,而Office需要设置一条超级复杂的公式。
输入公式=E1,设置单元格格式,特殊,人民币大写,确定。
直接就转变成大写,非常方便。
2.计算文本表达式
直接在单元格输入公式就行,而Office需要定义名称才能使用。
=EVALUATE(A2)
3.根据工作表名称生成目录
一个简单的函数即可,而Office需要很复杂的公式或者VBA才行。
=SHEETSNAME(,1)
4.查找图片
3年前就可以实现,Office今年最新版本才加入这个功能。

用VLOOKUP函数就能批量查找图片。

=VLOOKUP(G2,B:D,3,0)

你可能还是不敢相信自己的眼睛,没关系,卢子再用一个动画证明你看的就是真的。

不过,如果你看到这里,就到自己的电脑测试,得到的结果可能让你失望,用VLOOKUP函数查找的结果全是0,怎么回事呢?

下面就是解开谜底的时候了。

卢子的表格,对图片全部做了处理。选中图片,右键,切换为嵌入单元格图片,这样一来就变成了单元格的内容了。

使用这个功能的时候,有一个注意点,需要将图片完全放在单元格内,不允许有一点点超出。选中其中一张图片,按Ctrl+A全选图片,右键,切换为嵌入单元格图片,这样就一次性完成所有图片嵌入。

5.正则表达式REGEXP,提取各种内容
两个软件都有正则,而Office是由3个函数组成。

将字符串的数字、文字分离

[0-9]+代表连续的数字。

=REGEXP(A2,”[0-9]+”)

^就是非的意思,[^0-9]+代表不是数字,也就是剩下的文字。

=REGEXP(A2,”[^0-9]+”)

也可以用[一-龟]+

=REGEXP(A2,”[一-龟]+”)

6.用UNIQUE函数就可以提取不重复

从这个案例起,两个软件的函数都通用。

只需在一个单元格输入公式,回车以后会自动扩展区域,并提取不重复。

=UNIQUE(A1:A18)

除了可以针对一列,同时也可以针对多列,比如针对公司名称和软件提取不重复。

=UNIQUE(A1:B18)

7.不重复计数

UNIQUE可以提取不重复值,怎么进行不重复计数?

那太简单了,再嵌套个COUNTA统计个数就行。

=COUNTA(UNIQUE(B2:B18))

那如果是按公司名称、软件2个条件不重复计数呢?

同样简单,改下区域,再除以2就可以。

=COUNTA(UNIQUE(A2:B18))/2

8.用SORT函数对内容自动排序

对月份降序。

=SORT(F2:G4,1,-1)

语法说明:

=SORT(区域,对第几列排序,-1为降序1为升序)

比如现在要对金额升序。

=SORT(F2:G4,2,1)

9.凭证自动生成的最简单公式

以前卢子分享过凭证自动生成的方法,不过实在太繁琐了,详见:凭证自动生成,太难了?

只需在一个单元格输入公式,就自动扩展,简单到没朋友。

=FILTER(C2:G11,B2:B11=D14)

语法说明:

=FILTER(返回区域,条件区域=条件)

10.找不到对应值,不用再嵌套IFERROR

正常情况下,用VLOOKUP或者LOOKUP查找的时候,找不到对应值会显示#N/A,一般情况下需要嵌套IFERROR。

而XLOOKUP即便是找不到对应值,也不需要嵌套其他函数。

=XLOOKUP(E2,A:A,B:B,””)

语法说明:

=XLOOKUP(查找值,查找区域,返回区域,错误值显示值)

11.将查找到的所有对应值去除重复,再合并在一个单元格

这个前阵子帮学员写了一个公式,套了又套,挺复杂的。现在有了新函数,那一切就不一样了。

=TEXTJOIN(“,”,1,UNIQUE(FILTER($A$2:$A$18,$B$2:$B$18=F2)))

这个就相当于将前面学的函数综合起来,FILTER就是将符合条件的筛选出来,再用UNIQUE去除重复值,最后用TEXTJOIN将内容合并起来。

12.能实现透视表各种统计的GROUPBY

统计每个项目的金额
行区域A1:A72,值区域D1:D72,汇总方式SUM(也就是求和),3代表包含标题。
=GROUPBY(A1:A72,D1:D72,SUM,3)
汇总方式有非常多,最大值MAX,最小值MIN,平均值AVERAGE等等,现在以其中一个演示。
=GROUPBY(A1:A72,D1:D72,AVERAGE,3)
统计每个项目对应负责人的金额
行区域是从左到右按顺序,因此可以写A1:B72
=GROUPBY(A1:B72,D1:D72,SUM,3)
其他情况下,都需要结合HSATCK函数才行,比如求每个负责人对应项目的金额。
=GROUPBY(HSTACK(B1:B72,A1:A72),D1:D72,SUM,3)
其他传统的方式就不再说明,跟普通的透视表差不多,可以互相取代。下面讲新函数优势的地方。
根据项目合并负责人(数据源已去重复)
透视表的强项是处理数据,而处理文本并不擅长。而新函数不管数据还是文本,都可以处理。
ARRAYTOTEXT的作用就是按分隔符号合并文本。
=GROUPBY(A1:A7,B1:B7,ARRAYTOTEXT,3)
如果数据源有重复值,直接处理超级麻烦,建议辅助列用UNIQUE函数去重复。
=UNIQUE(A1:B72)
再引用辅助列的区域。
=GROUPBY(F1:F7,G1:G7,ARRAYTOTEXT,3)
将多表合并后,汇总项目对应的金额
合并多表以前都是借助PQ,再用透视表统计。
现在可以借助VSTACK合并,再用GROUPBY统计。
假如原来是每个项目一张工作表。
使用公式:
=GROUPBY(VSTACK(恩施市:华容区!A1:A72),VSTACK(恩施市:华容区!D1:D72),SUM,3)
这里再单独演示VSTACK的作用,就是将多表的数据合并在一个表。不过直接合并的时候,有一个小缺陷,会出现一大堆无用的0。这种当然也可以处理掉,不过不是这篇文章讨论的内容,以后再说。
=VSTACK(恩施市:华容区!A1:D72)

从上面的案例可以看出,Office有的函数,WPS都有,甚至有些函数用WPS更方便。直到今天,WPS才真正的实现国产替换,就算以后没有了Office对于绝大多数人而言,也没任何影响。

推荐:为什么越来越多的人放弃Excel,改用WPS表格?
上篇:新技能!批量将图片插入到指定单元格最简单好用的方法(Excel、WPS表格皆可)
请把「Excel不加班」推荐给你的朋友
别忘了点赞支持卢子哦↓↓↓