一、前言

今天来将一个比较有趣且轻松的(话)题。
是前几天遇到的一个需求,还是挺有意思的,所以记录一下。
不知道作为职场人,大家对Excel的掌握程度如何,觉得Excel这个工具的难度和应用程度如何?
我觉得Excel是一个可拓展空间特别大的工具,一个Excel的数据需求,你可以有很多种办法通过Excel的公式/辅助列实现。

但是一般作为小白,开始学习它,可能又会特别的“难受”。反正我当年读大学的时候,第一次接触到办公三件套,学的那个叫痛苦!特别是Excel,许久不能理解这个工具是怎么使用的,现在总结起来应该有那么两点,一个是没有应用场景,一个是没有工具思维。后来为了顺利通过计算机一级,曾在图书馆泡了很长一段时间,研究这个玩意。在经过一段时间的研究和实战之后,逐渐开窍了(其实就是找应用场景,跟着工具书给的数据,加上需求进行训练,然后不断思考为什么这么做)。
但是不要盲目拾起工具书,首先你需要有一个坚定的信念和可执行的计划,最好是在工作或生活中有应用场景。因为我见过很多Excel工具书买了一堆,结果也没学成案例。
往回看,还是很感谢那段时光的磨砺。在掌握了Excel之后,再往后学什么tableau、powerBI的时候,似乎都有一种底层的工具思维支撑着,许些东西是万变不离其宗,可以进行举一反三,剩下的就是根据新工具的新规则加以学习。

念了这么多,下面开始来看看问题吧~

二、问题

我梳理一下,将整个场景转化为一到Excel应用题,大致如下:

  • 表1,存放着已加企业号1为好友的用户数据;
  • 表2,存放着未加企业号1为好友的用户数据;
  • 表3,是目标用户的名单,存放的是加了其他企业号为好友的用户数据。
  • 表1和表2的数据没有相交;
  • 表3的用户可能在表1上,可能在表2上。

为了更好的理解,我简化了一下数据,做了一个迷你数据集,具体如下:

  • 表1有1001~1010共10位用户,都是添加企业号1。

  • 表2有1011~1020共10位用户,都没有添加企业号1。

  • 表3有1005~1014共10位用户,需要匹配是否添加企业号1和付款总金额。

她的需求就是判断在表3上的用户名单是否添加了企业号1,同时需要从表1和表2获取用户的付款总金额整合到表3上。(注意:原表单比这个要复杂很多,有几千行几十列,难以通过肉眼一个个看,我只是提取了关键的信息出来讲解。)
作为读者,如果是你,你会怎么做呢?

2.1 解法一

先说说她的做法,在表3编写vlookup()函数,并嵌套一层if()函数,查询用户在表1是否匹配上,匹配上返回,匹配不上返回,但是匹配之后出现了**#N/A**,不知道为什么,也不知道怎么办,于是来找我帮忙解决。

B2=IF(VLOOKUP(A2,'表1-企业号1'!A:A,1,0)>0,"是","否")

先解释一下原因,因为vlookup()匹配值的时候,如果匹配不上会返回#N/A值,if()函数没法处理#N/A值,如果要处理#N/A值,可以加一层判断,使用ifearror()捕获错误值,具体公式如下:

B2=IFERROR(IF(VLOOKUP(A2,'表1-企业号1'!A:A,1,0)>0,"是","否"),"否")

这可以解决第一个需求,但是第二个需求呢?
沿着她的思路,继续前行——需要分别从两个表中取金额,分步去做的话,效率会很低——需要分别匹配两个表,然后再选择有值的行,可以直接编写公式,或者通过新建两个列来辅助完成。
直接编辑公式的方法参考:

C2=IFERROR(VLOOKUP(A3,'表1-企业号1'!A:B,2,0),VLOOKUP(A3,'表2-非企业号1'!A:B,2,0))


通过两个新建列来辅助完成的方法参考:

# 其实和直接编写公式差不多,只不过通过里面的两个值拆开,变成两列,更方便观察而已,主要是在表1和表2有重复的情况下回比较实用
D2=VLOOKUP(A2,'表1-企业号1'!A:B,2,0)
E2=VLOOKUP(A2,'表2-非企业号1'!A:B,2,0)
C2=IFERROR(D2,E2)


在一顿操作下来,感觉有点小题大做了。

2.2 解法二

换个思路,既然是要在两个表中匹配数据,而且维度都一样,为什么不一开始就将数据整合到同一个表中呢?
这样子可以将公式的难度降到只有vlookup,大大提高效率!
具体推荐操作如下:
为了保留原始数据,这里复制一个【表1-企业号1】的副本,重命名为【表1】,再将表2的数据的数据复制粘贴到表1底下(追加到第12~21行),为了区分数据,新增列D和列E,将数据源处理规整,然后直接在表3写两个vlookup()即可搞定!

B2=VLOOKUP(A2,表1!A:E,5,0)
C2=VLOOKUP(A2,表1!A:B,2,0)

三、总结

其实这个没有标准答案,达成最终的目的可以有很多种方式,毕竟Excel的灵活性还是很高,功能很强大的。这里只是讲了两种解决逻辑,直接通过复杂的公式得到最终的结果也是可以的,但我更倾向于建设好底层的数据集,然后再进行简单的公式操作。
在业务上的体现可能就是根据业务的逻辑搭建一个或者一套业务宽表,将业务逻辑都写到宽表里,把相关数据都整上去,方便后续直接取数,提高整体操作效率。当然,这个业务需要是一个比较稳定的业务。

传送门:相关数据集下载。

业务实战记录(1):帮业务人员做道Excel题相关推荐

  1. (B站云e办)SpringBoot开发项目实战记录(八)(Easy poi 完成excel导出导入)

    (B站云e办)SpringBoot开发项目实战记录(八) 一. pom依赖 二. 下载文件 2.1 jopo注释注解@Excel与@ExcelEntry 2.2 controller层 (完成exce ...

  2. 业务实战记录(2):流失率统计逻辑误区

    一.前言 最近几天在了解公司的一个业务,在看前同事做的一个面板的时候,看到一组数据,有点纳闷(根据相关逻辑替换数据后的结果如下).总流失率竟然比添加流失率还高!虽然只高了一点点,但是看着还是很奇怪,难 ...

  3. 业务系统日志记录规范总结

    业务系统日志记录规范 注意 应用中应该充满了日志记录信息,日志甚至比逻辑代码还要多: 集成 seluth ,开启消息链路:不开启日志上传,不集成 zipkin; 应该避免日志记录过程中出现异常,比如 ...

  4. 设计模式之业务实战培训

    设计模式之业务实战 本文章通过把日常常用的设计模式,就如何结合业务并在整个业务项目中落地,做了总结.有来源于真实的业务场景,有来源大厂案例,有来源于开源框架中的经典案例,只是为了做个笔记,不喜勿喷. ...

  5. 《数据分析方法论和业务实战》读书笔记

    <数据分析方法和业务实战>读书笔记 共9章:前两章入门,3-7章介绍基本方法,8章从项目实战介绍数据分析,9章答疑常见问题. 1 数据分析基础 数据分析的完整流程 数据->信息-〉了 ...

  6. 业务逻辑全写在sql_TiDB 在转转的业务实战

    作者介绍 陈维,转转优品技术部 RD. 世界级的开源分布式数据库 TiDB 自 2016 年 12 月正式发布第一个版本以来,业内诸多公司逐步引入使用,并取得广泛认可. 对于互联网公司,数据存储的重要 ...

  7. bpmn2.0业务过程模型和符号_IT帮业务架构学习小组学习内容

    关于学习内容,担心大家学完的可能不多,所以考虑是先选择一小部分来学.但考虑到业务架构属于组织级学科,本身就要求体系全面,所以还是决定把全套内容放入到本期学习.下面我列举一下我们这8个月在业务架构自主学 ...

  8. 业务团队如何在日常工作中做稳定性?涵盖事前、事中、事后的方方面面

    你好呀,我是Bella酱- "又不是不能用,能用就行.""又不是不能跑,能跑就行.程序和人有一个能跑就行." 相信很多同学都听过这2句话.乍听没毛病.编程3部曲 ...

  9. [Springboot]发送邮件、重置密码业务实战

    前言 忘记密码并通过邮件重置密码是一个常见的业务需求,在开发我的个人小项目过程中,也需要用到这个业务,今天就给大家带来一个业务实战. 开发环境 springboot:1.5.16.RELEASE 业务 ...

最新文章

  1. qemu debug linux内核,qemu调试linux内核
  2. datasnap 2011连接池,数据集对象池
  3. 文献记录(part52)--基于度相关性的病毒传播模型及其分析
  4. querybuilder 排序_elasticsearch的匹配与排序问题
  5. ICCV 2019 | 港大提出视频显著物体检测算法MGA,大幅提升分割精度
  6. kettle的命名参数接口NamedParams实现与Job命名参数的传递和使用实现
  7. oracle 截取指定时间戳,oracle时间函数(包括截取时间)
  8. webservice测试工具
  9. android api文档中文版_干货分享 | Android 存储空间的最佳实践 (下)
  10. 洞见 | Peter:Web3.0 的宏观架构
  11. 详解Unity中的刚体和碰撞体组件
  12. 开源物联网云平台 Thingsboard入门
  13. web项目的中英文切换功
  14. C++17 实现日期和时间相关编程
  15. 网站流量统计分析工具,谷歌seo网站流量统计分析工具推荐
  16. NetWorkHelper 检测网络状态
  17. 不要小看了get 与set
  18. 文件内容读取相关操作
  19. 中北大学信息商务学院计算机系学生会名单,2017年中北大学信息商务学院新媒体中心部员竞选结果公示...
  20. STM32基础-外部中断与优先级

热门文章

  1. 个人免费申请微信支付小微商户指南
  2. unity游戏开发-简易的状态机
  3. 美的微晶冰箱以云数据为驱动,实现智能保鲜冰箱智慧新升级
  4. Doris入门到精通-阶段一(简介安装使用)
  5. python+大数据-MySQL-day02(黑马)
  6. #loj3124. 「CTS2019 | CTSC2019」氪金手游
  7. linux下用命令修改图片像素
  8. 将对象的属性值复制到另一个对象中
  9. 华为云桌面---cloudclient安装使用
  10. 在3dmax中导入的动画摄像机巡游与主摄像机之间的切换