美文网首页
Excel 案例与基础讲解(上)

Excel 案例与基础讲解(上)

作者: 小猪与城 | 来源:发表于2020-07-19 18:09 被阅读0次

    1.文章内容及目的

    好久没写了,本文是来总结一下最近学习的Excel基础。为了让自己记忆的更好,用实战+案例的形式更能记清楚Excel的每一个基础操作。
    (1)本文的案例是员工信息的清理 + 工资条的制作。
    (2)案例里面含有excel 查询基础操作,截取基础操作,数据验证基础操作,数据模拟基础,还有一些基础的选择 + word和excel的结合应用。
    (3)希望能给有excel基础的朋友多一个练手的案例

    2.项目的简述与需求

    员工信息表

    员工信息表,我们第一个案例的主表。在员工信息表里面,我们的清洗目标,或者说是我们的需求是:
    (1)随机在部门表里生成 部门表中的四个部门 要求 用index+randbetween 和 choose+randbetween 两种方法来做
    (2)编号 变成部门名称缩写 + 编号 例如 序号1的是生产部的 就是 ‘SCB01’
    (3)名字里面含有数字和字符,清洗名字里面的数字和字符 只保留姓名(注意存在同名的人)
    (4)随机生成 2005-07-07 到2019 -03-01 的入职日期 放在日期表
    (5)计算工龄 不足一年的不算
    (6)计算不足一年的工龄(月)
    (7)出生日期的提取
    (8)年龄的提取
    (9)性别的提取,身份证倒数第二位,奇数 显示男 偶数为女
    (10)从省份表里面提取省份 (身份证号前2位)
    (11)从省份表里面提取区县 (身份证号前6位)
    接下来是所有辅助需求的表,部门表:


    部门表

    部门表 用于给员工信息表提供部门的信息
    省市表:


    省份表部分截取图
    省份表用于给员工信息表提供省份信息及区县信息

    3. 实际操作与讲解(1-4)

    一共是11个需求,我们先来完成前四个.
    (1)随机在部门表里生成 部门表中的四个部门 要求 用index+randbetween 和 choose+randbetween 两种方法来做
    第一个题主要是锻炼一下 如何模拟数据。在数据分析领域,有的时候需要我们模拟一些数据来测试我们做的模型,或者是看一下分析方法的对错。所以如何模拟数据也是要掌握的。
    先介绍一下题目所用函数:

    (1)INDEX(array, row_num, [column_num])

    第一个参数是 选定的查询区域
    第二个参数是返回的行号
    第三个参数是返回的列号
    INDEX 函数通过区域,行号,列号返回一个单元格里面的一个值。

    (2)RANDBETWEEN(bottom, top)

    RANDBETWEEN 函数有两个参数,第一个参数是随机数的最低点,第二个参数是最高点。例如 RANDBETWEEN(1,4),随机返回1到4 范围内的整数。RANDBETWEEN 就是随机返回从bottom 到 top 这个范围的数值。

    (3)CHOOSE(index_num, value1, [value2], ...)

    CHOOSE 函数第一个参数是选择选取的位置。第二个参数之后是选择的范围。例如choose(1,1,2,3)的意思是,从1,2,3 中选取位置为1的数返回,结果为1.

    问题(1)具体操作实现:
    第一题 index+randbetween
    这道题的思路就是index + randbetween,我们可以用index函数去定位部门的查询范围,过程中用F4 固定一下函数,防止填充数据时,区域变动。然后用随机数(randbetween)的方式让index 函数返回具体部门的值。
    第二种方法:choose+randbetween
    第一题choose+randbetween
    也可以用 choose 函数把部门值放入选择范围, 然后用随机数的方式,改变choose 函数的第一参数(选取位置),来达到随机选择的效果。

    (2)编号 变成部门名称缩写 + 编号 例如 序号1的是生产部的 就是 ‘SCB1’
    介绍题目所用的函数 IF 函数
    IF(logical_test, value_if_true, [value_if_false])
    IF 函数第一个参数时判断的条件
    第二个参数是条件为真的时候,返回的值
    第二个参数是条件为假的时候,返回的值
    另外这道题 还用到了连接符号&,可以把两个文本连接成一个文本。

    问题(2)具体操作实现:
    第二题if函数嵌套
    公式比较长,发出来方便观看:
    =IF(F2="行政部","XZB",IF($F2="生产部","SCB","XSB")))&A2
    思路是,用第一个IF函数判断 是不是管理部,如果是就返回GLB 不是的话,套一个IF函数,判断是不是行政部,是返回XZB不是就继续套IF 函数,最后因为只有4个部门,所以到第三个IF函数的时候,如果都不是前三个部门,那就只能是最后的销售部,所以直接返回XSB。最后连接上A2单元格的编号,就做好了。

    (3)名字里面含有数字和字符,清洗名字里面的数字和字符 只保留姓名(注意存在同名的人)
    这个题有两种方法,因为第一种方法可以用LEN 和 LENB 函数去完成,但是因为我是英文版,没有LENB函数,所以第一种方法就不给大家演示了,希望大家自己下去查这种方法。

    第二种方法是把excel 和 office word 进行结合来完成一些复杂的清理工作。office word 里面有强大的查找替换功能,所以有些时候,我们可以用Excel + Word 来达到我们想要的操作。

    问题(3)具体操作实现:
    第三题Word+Excel结合
    主要思路 用Word 强大的查找替换功能 来做Excel 不方便做的事情,从而达到更高的效率。过程中的正则表达式,可以在word里面查看,也可以搜素Word正则表达式 来学习。

    (4)随机生成 2005-07-07 到2019 -03-01 的入职日期 放在日期表
    主要函数 还是randbewteen,这个函数除了可以模拟数字,也可以模拟时间,算是这个函数的又一个用法。

    问题(4)具体操作实现:
    第四题randbetween模拟日期
    至此前四题已经完成我们总结一下前4题
    前4题主要练习了数据的模拟,和数据的清理 方面的一些基础的知识,包含了choose,randbetween,if等函数的一些基础应用。也希望以后能把这些函数灵活的运用到工作和生活中。接下来我们做第(5),(6) 两个有关时间操作的题目。

    4. 实际操作与讲解(5-6)

    第五题和第六题都是excel 时间函数的应用。第五题,第六题的要求先列出来看一下:
    (5)计算工龄 不足一年的不算
    (6)计算不足一年的工龄(月)
    这两道题所应用的函数:
    DATEDIF 函数, DATEDIF 函数如果你在excel里面输入是没有提示的,但是这个函数确实可以在excel里面应用,所以需要我们手动去输入这个函数,下面我们来看看这个函数的参数和解析:

    起始日期 结束日期 公式 参数 说明
    2010/9/1 2012/2/4 1 ==DATEDIF(A2,B2,"Y") Y 相差年数
    2010/8/2 2012/2/4 18 =DATEDIF(A3,B3,"M") M 相差总月数
    2010/8/1 2012/2/8 6 =DATEDIF(A4,B4,"YM") YM 一年内相差月数
    2010/8/5 2012/2/8 552 =DATEDIF(A5,B5,"D") D 相差总天数
    2010/8/1 2012/2/4 187 =DATEDIF(A6,B6,"YD") YD 一年内相差天数
    2010/8/5 2012/2/10 5 =DATEDIF(A7,B7,"MD") MD 一月内相差天数

    A2 代表这起始日期,B2代表结束日期,参数说明都在表格里面。

    问题(5,6)具体操作实现:
    第56题 datedif 函数
    分析思路主要还是应用datedif函数来进行日期的运算,这个函数的基础用法就先展示到这里。案例结合基础讲解的上半部分,就先结束。下半部分主要介绍几个查询函数的基础,外加简易查询的制作。

    因为有些数据是随机生成的所以,可能每个gif数据不太一样,不过这个不影响做题的方法,所以如果发现这个问题,忽略就好。

    内容及资料均来源于网课,个人在网课的案例框架基础上更改了一些数据,适用于个人的学习笔记,如有侵权联系删除。

    相关文章

      网友评论

          本文标题:Excel 案例与基础讲解(上)

          本文链接:https://www.haomeiwen.com/subject/sopzyctx.html