首页
学习
活动
专区
工具
TVP
发布

用函数制作工资条方便更新

工资清单是比较常见的。

假设有个名为“工资表”,如下工资清单

需要变成如下效果。

我们分析特点。

第3行,第6行,第9行,也就是如果行号除3的余数为0,则显示空白。

那么需要一个公式如下

=IF(MOD(ROW(),3)=0,"","其他公式")

第1行,第4行,第7行,也就是如果行号除以3余数为1时,永远得到工资表第一行的数据,但是列需要变化。,

那么需要一个公式如下,请注意锁定方式

=IF(MOD(ROW(),3)=0,工资表!A$1,"其他公式")

第2行,第5行,第8行公式最难理解。

你需要INDEX,INT,ROW,COLUMN函数的知识。

如下公式

=(ROW()-1)/3

构建如下效果。

使用如下公式,可以每三行序号列加1

这完全是数学上的问题。

再来看INDEX函数

=INDEX(区域,行号,列号)

如下表格中

=INDEX(A:G,2,1) 就是第二行第一列,得到“赵甲子”

=INDEX(A:G,2,2) 就是第二行第二列,得到男

=INDEX(A:G,2,3) 就是第二行第二列,得到29

=INDEX(A:G,3,1) 就是第三行第一列,得到“钱乙丑”

=INDEX(A:G,3,2) 就是第三行第二列,得到男

=INDEX(A:G,3,3) 就是第三行第三列,得到38

为什么从第二行开始?

因为第一行是标题。

完整的公式如下。

也就是在表2中写一个公式就可以达到这样的效果。

完成的公式如下

今天的公式有点难

核心的部分就在于

=INDEX(工资表!$A:$G,INT((ROW()-1)/3)+2,COLUMN())

可以先收藏,以后慢慢理解。

当然有人会问,为什么不用排序的方法做

因为函数可以立即马上更新。

子曰:用之则行,不用则藏。

意思是说,如果你用我的这些建议,就马上行动,知行合一,如果你不用,就赶紧收藏,以绝后患。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200605A03AC100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券