分享

如何用excel制作工资条?

 牵牛360 2018-03-03

用excel制作工资条的方法非常多,比如辅助列排序插空法、神长公式法、VBA法等等,但是,每个方法都有些问题,比如:

  • 辅助列排序插空法:每次数据更新得重新搞一次,虽然不复杂,但也很烦;

  • 神长公式法:公式比较难懂,数据增加后得手动扩展公式,数据量很大时可能出现卡顿;

  • VBA法:得学好VBA,这个对很多Excel用户来说比较痛苦。

因此,以下给出Excel2016的新功能Power Query(Excel2010或Excel2013可到微软官方下载相应的插件)的解法,虽然步骤有点儿多,而且也用到了Power Query里的函数,但是,总体操作不复杂,每个函数也是单独使用,比Excel中的多个函数嵌套使用更容易理解,关键是,通过Power Query实现的方案可以一键刷新,一劳永逸!具体过程如下:

Step-01:基础的工资表数据获取到PQ后,首先对基础工资表加个索引列,方便后面合并了标题表和空白表后的排序。

为方便后续合并表时写公式,添加后将步骤名称改为“源加索引”:

Step-02:打开【高级编辑器】,通过M函数添加标题表

修改前代码及需要修改的地方:

修改代码,增加以下函数(公式):

标题=Table.FromList(

Table.ToRecords(源),

Record.FieldNames,

Table.ColumnNames(源)

)

修改后如下(注意其中上一步骤中增加的逗号和in后面要修改的内容):

点击【完成】后,标题表就构建完成了,结果如下图所示:

Step-03:同样的,给标题表增加索引列

Step-04:类似的,添加空白行表

修改前代码及需要修改的地方如下:

加入以下函数(公式):

空行=Table.FromList(

Table.ToRecords(源),

null,

Table.ColumnNames(源)

)

修改后代码如下:

此时结果如下(全都是错误,不过没有关系,PQ中的错误在Excel中就显示为空白):

Step-05:给空白表加索引

Step-06:用M函数将添加了索引列的工资表、标题表和空白表合并在一起

(为写合并表公式时含义明确,按照Step-01的方法分别修改标题表加索引的步骤和空白表加索引的步骤名称为“标题加索引”和“空白加索引”)

修改前代码及需要修改的地方如下:

增加合并表的公式:

合并 = Table.Combine(

{标题加索引,源加索引,空白加索引}

)

修改后代码如下:

Step-07:最后,对索引列排序就OK了

小勤:嗯。过程很清晰,就是那几个函数感觉挺复杂的。

大海:这里面用到的函数的确比较多一点儿。其中:

  • Table.FromList、Table.ToRecords涉及表和行列结构类型的数据转换,比较复杂一点儿,以后我专门针对不同数据结构之间转换的一系列函数跟你讲,对比着学;

  • Table.ColumnNames比较简单,就是取一个表的所有的字段名称;

  • Table.Combine也比较简单,就是将多个表纵向追加到一起。

这几个函数你先试着自己查一下文档理解一下,后面2个函数应该不会有什么问题的。

小勤:好的。关于数据结构之间的转换出个系列吧,感觉这部分内容很重要啊。


更多精彩内容,敬请关注【Excel到PowerBI】

私信我即可下载60+Excel函数、数据透视10篇及Power系列功能95篇汇总训练材料

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多