分配给列的分配公式
最佳答案
-
Leibel博士Shuchat ✭✭✭✭✭
从技术上讲,您可以硬编码每个可能的添加赋值给。下面的例子将检查每个单元格最多2个联系人。
=IF(COUNTM([已分配]@行)= 1,IF(SUMIFS([%分配]:[%分配],[已分配]:[已分配]@行))> 1,1,""),IF(COUNTM([已分配]@行)= 2,IF(OR(SUMIFS([%分配]:[%分配],[已分配]:[已分配]@行)- 1))> 1,SUMIFS([%分配]:[%分配],[已分配]:[已分配],HAS(@cell, LEFT([已分配]@行)- 1))> 1,SUMIFS([%分配]:[%分配],[已分配]:[已分配],HAS(@cell, MID([已分配]@行,FIND(", ",[已分配]@行)+ 2,LEN([被]@row) -找到(“,”,[被]@row)))) > 1), 1 , ""), ""))
但是,如果有另一个表,其中包含每个可能分配到的人的独立列表(每行一个人),并有一列查找这个特定员工的%分配,那么在这个表中,您可以查找这个人,看看他们是否被标记为过度分配并相应更改。
1
答案
-
保罗新来的 ✭✭✭✭✭✭
第一个比特看起来像这样(把它放在一个单独的列中):
=IF(SUMIFS([% Allocation]:[% Allocation], [Assigned To]:[Assigned To], @cell = [Assigned To]@row) > 1,1)
然后,您可以使用基于这个新列的条件格式来突出显示Assigned to列,其中任何行在新列中包含“1”。
至于第二点,我们只需要在上面做一些小的调整,但这些调整将取决于……
具体分配给什么类型的列?允许多人联系?同时选中下拉?文本/号码吗?
thinkspi.com
1 -
保罗新来的 ✭✭✭✭✭✭
如果其中一个,另一个,或两者都超过100%,它就会变成红色,但这个公式看起来是这样的
=IF(OR(SUMIFS([% Allocation]:[% Allocation], [Assigned To]:[Assigned To], HAS(@cell, [Assigned To]@row) > 1, SUMIFS([% Allocation]:[% Allocation], [Assigned To]:[Assigned To], HAS([Assigned To]@row, @cell) > 1), 1)
thinkspi.com
0 -
Zain ✭
感谢您的回复!我插入了你刚刚给我的公式,我正在收到一个列错误:#错误参数集。
“分配给”列是一个“联系人列表”列类型,在属性下选中“每个单元格允许多个联系人”框。
“%分配”列是“文本/数字”列类型。
你能帮我一下吗?
此外,如果在一个单元中分配了5人或更多的人,并且5人中有2或3人的分配超过了100%,是否有一个公式或方法可以轻松地识别哪个人分配过多?因此,如果某个人有100个任务(5%,10%,6%等等),而其他4个人有相同数量(但不同)的任务和百分比,除了根据5个人的名字进行过滤并查看哪些行变红之外,是否有一种更快的方法来识别?
0 -
保罗新来的 ✭✭✭✭✭✭
很抱歉。我漏了一个右括号。
=IF(OR(SUMIFS([% Allocation]:[% Allocation], [Assigned To]:[Assigned To], HAS(@cell, [Assigned To]@row) > 1, SUMIFS([% Allocation]:[% Allocation], [Assigned To]:[Assigned To], HAS([Assigned To]@row, @cell)) > 1), 1)
不过我得在第二个问题上再答复你。它可能需要单独的一张纸。
thinkspi.com
0 -
保罗新来的 ✭✭✭✭✭✭
再次抱歉。出于某种原因,我真的很纠结于这个括号:
=IF(OR(SUMIFS([% Allocation]:[% Allocation], [Assigned To]:[Assigned To], HAS(@cell, [Assigned To]@row)) > 1, SUMIFS([% Allocation]:[% Allocation], [Assigned To]:[Assigned To], HAS([Assigned To]@row, @cell)) > 1), 1)
thinkspi.com
0 -
Zain ✭0
-
吉纳维芙P。 员工管理
目前还没有一种方法来解析多选择单元格并在列中分别搜索每个单独的值。第二个SUMIFS语句查看特定的名称组合是否出现不止一次(例如,“Bob”和“Riley”同时出现在一个单元格中)。
我建议创建两个任务,每个任务分配给一个人,而不是一个任务分配给两个人。
另一个选项是在单元格中搜索每个可能的选择,然后检查每个选项的% Allocation。
如果行都选择了“Bob”而且如果所选Bob的SUMIFS大于100%,则返回1。
例:
=IF(AND(HAS([分配给]@row, "Bob", SUMIFS([%分配]:[%分配],[分配给]:[分配给],HAS(@cell, "Bob")) > 1), 1)
然后你可以添加多个IF语句在一起,每个联系人一个:
=IF(AND(HAS([分配给]@row, "Bob", SUMIFS([%分配]:[%分配],[分配给]:[分配给],HAS(@cell, "Bob")) > 1), 1)+如果((((分配)@row,“莱利”,SUMIFS([%分配]:[%分配],[分配给]:[分配给],(@cell。”莱利”))1), 1)
将所有可能要搜索的人加在一起之后,就可以设置条件格式规则来查看公式列是否大于1。
让我知道,如果这是有意义的,将为您工作!
欢呼,
吉纳维芙
1 -
Leibel博士Shuchat ✭✭✭✭✭
从技术上讲,您可以硬编码每个可能的添加赋值给。下面的例子将检查每个单元格最多2个联系人。
=IF(COUNTM([已分配]@行)= 1,IF(SUMIFS([%分配]:[%分配],[已分配]:[已分配]@行))> 1,1,""),IF(COUNTM([已分配]@行)= 2,IF(OR(SUMIFS([%分配]:[%分配],[已分配]:[已分配]@行)- 1))> 1,SUMIFS([%分配]:[%分配],[已分配]:[已分配],HAS(@cell, LEFT([已分配]@行)- 1))> 1,SUMIFS([%分配]:[%分配],[已分配]:[已分配],HAS(@cell, MID([已分配]@行,FIND(", ",[已分配]@行)+ 2,LEN([被]@row) -找到(“,”,[被]@row)))) > 1), 1 , ""), ""))
但是,如果有另一个表,其中包含每个可能分配到的人的独立列表(每行一个人),并有一列查找这个特定员工的%分配,那么在这个表中,您可以查找这个人,看看他们是否被标记为过度分配并相应更改。
1 -
Zain ✭
@Genevieve P。而且@Leibel Shuchat谢谢你的帮助!对于同样的任务或活动,有另一张表是有意义的,这样我就可以适当地分配每个人。
0