工厂的车间统计员需要对当月的生产工单进行工资单的工资单,下图 1 显示了其工厂员工每个生产任务的完成数量总量和相应工单产品的单价。
因为有些工单是集体计件工作,即多人完成的,所以需要将多人完成的这些工单数量平均分配给每个成员,因为工单数量太大,有的工单是一个员工完成的,有的工单是两个完成的,所以需要统计师手动逐个统计, 而且工作量比较大。
现在的需求是设计一个功能公式,一键计算员工的工资。
图1:源数据中每个员工的计件工资是多少?您需要判断的第一件事是有多少员工完成了每张工单。 通过目视观察有一定的规律,不同的员工用符号“+”隔开,所以通过数一数这个“+”号就可以判断员工人数。
确定员工人数后,可以将金额除以员工人数以获得平均金额。 最后,根据员工人数,对应的员工进行扩容,然后对情况进行统计总结。 解决这一需求的更好方法之一是使用辅助柱。 解决方案如下图 2 所示
在图 2 中,如果一个工单由多个员工完成,则员工之间用符号“+”分隔,因此您只需要使用 textsplitb 来分隔指定的符号即可
员工细分:=textsplit(f3,"+"),下拉填充。
统计人员: =columns(textsplit(f3,"+"拉下填充物,这样你就可以得到员工的数量。
每个员工应支付的工资:=e3 g3,员工总数。
完成后,效果如下图3所示
图3 如果需要分别统计每个成员应该支付的金额,需要汇总,源数据是二维表,比较难统计,用辅助列转换很简单。
输入函数:=textsplit(f3,"+"),下拉填充。
功能定义:F3 员工按符号“+”排序。
效果如下图4所示
图4 入场函数:=expand(h3,,g3,h3),下拉填充。
功能定义:展开金额,分机数为员工数,填充数为金额。
效果如下图5所示
图 5 完成了这两个步骤,相当于将员工和金额转换为 2D 表。
此步骤的目标是将上述辅助 2D 表(Employees 和 Amounts)转换为单个列,该列可分别用作总和和和条件区域。
输入函数:=tocol(j3:l7,1),将员工的二维转换为列;
输入函数:=tocol(n3:p7,1),将金额的两个维度转换为一列;
效果如下图6所示
图 6 在上一步中,您可以通过将每个员工转换为列来获取每个员工的总金额。
输入函数:=unique(r3
输入函数:=sumifs(s3 ,r3 ,u3
最终结果如下图 7 所示
图7