我有一段编码,它会按照从最高到最低的性能(百分比)的顺序排序人员列表。这意味着如果一个人表现良好且人的价值上升,他们就会上升到人名单,这个编码如下:
=IFERROR(INDEX('[Filename.xlsx]Sheet'!$A$4:$A$1000,MATCH(LARGE('[Filename.xlsx]Sheet'!$AS$4:$AS$1000,ROW()-4),'[Filename.xlsx]Sheet'!$AS$4:$AS$1000,0)),"")
拖出
上面的编码来自一个编码,它对数据进行排名,因此数据越高,数字越高:
{=IF(AR4="","",SUM(1*(AR4>$AR$4:$AR$1000))+1+IF(ROW(AR4)-ROW($AR$4)=0,0,SUM(1*(AR4=OFFSET($AR$4,0,0,INDEX(ROW(AR4)-ROW($AR$4)+1,1)-1,1)))))}
拖出
因此,上面的代码会根据员工的绩效百分比来提取员工的唯一ID。
使用唯一ID,我使用VLOOKUPS来获取其余的数据,包括名称,国家,行业等...所以如果一个人的表现上升,他们会向上移动列表和正确的数据保存在同一行。
现在我遇到的问题是我想在问题开始的新列中使用数据验证列表手动将这些人分配到工作角色。
所以我添加了一个列,其中每个单元格都包含一个数据验证列表,所以当我给一个人一个工作角色......然后有人向上移动列表时,剩下的数据向下移动但是工作角色/数据验证保留在同一个单元格中,并且不会随数据向下移动。我想知道是否有任何方法可以解决这个问题,并且当工作角色附加到员工身上时,它会与该员工一起移动。
上述例子:
Unique ID Name Country Performance JOB ROLE
123456789 tom UK 90% BOSS
987868564 bill USA 76% SALESMAN
162537456 steve sweden 52% WORKER
现在,在史蒂夫获得99%的表现的情况下:
Unique ID Name Country Performance JOB ROLE (List)
162537456 steve sweden 99% BOSS
123456789 tom UK 90% SALESMAN
987868564 bill USA 76% WORKER
请注意,工作角色保持在同一个地方? - 汤姆应该有BOSS工作角色,账单应该是推销员,史蒂夫应该是工人。