工作流自动化-人员分配功能。
我为我的团队创建了轮值表。左侧轴显示日期和日期,顶部轴显示按团队划分的每个人员。在表格中,每个人在每一天被分配一个字母,取决于他们被分配到的班次(例如D =白班,a =下午班)。
然后,我设置了一个自动化系统,每天收集每个班次的每个人。
自动化操作如下。
根据他们当天分配的字母,这将输入到另一个表中,在那里收集每个班次的不同人员。
当你重新分配某人的班次时,自动化就会起作用。例如你在轮班表上把我从D(白班)分配到N(夜班),自动化系统然后把我的联系方式放在右边的夜班栏里。然而,我的名字仍然停留在白班一栏。
有没有办法从它在以前的单元格中删除一个名字?
我理解使用一个和索引(收集(或Join(收集可能是更好的,但我没有找到一个方法来做这给了许多不同的变量,它必须查找。
非常感谢!
最佳答案
答案
-
杰夫瑞斯曼 ✭✭✭✭✭
代替自动化,您可以在每个shift的列中添加一堆IF语句。但是,你需要这样做将Shift列从联系人类型列转换为常规多选列,你需要这样做创建一个新的常规多选列(我们叫它“Employee”),列出你的员工:
让我们从白班这一栏开始:
=如果((电子邮件保护)= "D", Employee1) + IF((电子邮件保护)= "D", Employee2) + IF((电子邮件保护)= "D", Employee3) + IF((电子邮件保护)= "D", Employee4) + IF((电子邮件保护)= "D", Employee5) + IF((电子邮件保护)= "D", Employee6) + IF((电子邮件保护)= "D", Employee7) + IF((电子邮件保护)= "D", Employee8) + IF((电子邮件保护)=“D”,Employee9)
这样做的结果是,在多选择列中,每个名称作为一个不同的值列在多选择单元格中。
对于您的小日班列,只需将上面公式中的“D”改为“SD”,对于其他的班列,依此类推。
这样,当某人的班次改变时,公式就会更新,员工的名字就会移到正确的班次列。
0 -
JPFORDTE ✭
嗨,杰夫,
非常感谢!这个作品。
一个小问题:
您知道为什么某些行返回0吗?不知道为什么。
0 -
杰夫瑞斯曼 ✭✭✭✭✭
-
JPFORDTE ✭
雇员列表:
公式(这个查找正确的人,但也有一个零,在这个单元格中返回):
=如果((电子邮件保护)= "D", $Employee$1) + IF((电子邮件保护)= "D", $Employee$2) + IF((电子邮件保护)= "D", $Employee$3) + IF((电子邮件保护)= "D", $Employee$4) + IF((电子邮件保护)= "D", $Employee$5) + IF((电子邮件保护)= "D", $Employee$6) + IF((电子邮件保护)row = "D", $Employee$7) + IF((电子邮件保护)= "D", $Employee$8) + IF((电子邮件保护)= "D", $Employee$9) + IF((电子邮件保护)= "D", $Employee$10) + IF((电子邮件保护)= "D", $Employee$11) + IF((电子邮件保护)= "D", $Employee$12) + IF((电子邮件保护)= "D", $Employee$13) + IF((电子邮件保护)= "D", $Employee$14) + IF((电子邮件保护)= "D", $Employee$15) + IF((电子邮件保护)= "D", $Employee$16) + IF((电子邮件保护)= "D", $Employee$17) + IF((电子邮件保护)=“D”,员工18美元)
0 -
JPFORDTE ✭
传说!谢谢你,杰夫,这奏效了!
0 -
杰夫瑞斯曼 ✭✭✭✭✭
太棒了!
现在我想到了它-这里是为什么0被放置在单元格,为什么添加“”修复它:
因为我们没有给if指定负条件(逻辑表达式为false的值),并且我们将公式加在一起,Smartsheet假设负条件是默认的负数值,即0。(例如,在复选框字段中,1被选中为正数,0被选中为负数。)如果你添加了一串If,这些If的条件都是数字(不加引号),Smartsheet会用数学方法将这些值相加。通过添加“”(空白文本)负条件,这意味着不像它是0 + 0 + 0等处理公式,它将其视为空白文本+ 0 + 0,有效地将单元格变成一个文本单元格,因此不“添加”所有的零在一起。
1