如果用户存在于另一列中,则尝试使用If语句将单元格标记为“X”

我有一个电子表格跟踪用户和他们所属的组。 通常情况下,我需要按用户分组,find匹配项,并在该单元格中放置一个“X”。 这是漫长而乏味的,所以我希望有人可以有更好的解决scheme。

这是我的电子表格的样子:

在这里输入图像说明

我可以得到每个组(SharePoint)中所有用户的列表,但是我需要在Excel中跟踪这些信息。 我想这样的事情会开始:= if((A2 =“user1”,“user2”,“user5”,“userN”),“X”,“”)

我不确定这个公式是否可行,但这是我背后的逻辑。 我想find一种方法,我可以轻松快速地切换名称,因为这是一个很长的名单。

好的,我希望我能理解你的问题。

将用户复制并粘贴到工作簿中的单独工作表(如Sheet2 )中,以便为Group1提供单个单元格,例如:

  A Mike Stuart, Casey Jones, Jessica Milne 

在数据选项卡上,您可以使用Text to Column > Delimited > Comma来获取此:

  ABC Mike Stuart | Casey Jones | Jessica Milne 

意思是说,你在一列中有一个用户。 优选地,所有第一组用户应该在这一行中。

在具有用户和组的工作表中,然后使用单元格B2中的公式并将其拖下来:

 =IF(ISNA(HLOOKUP(A2, Sheet2!$1:$1, 1, 0)), "", "X") 

您可以将其他组放在第一组以下,以便Sheet2的第二行包含group2中的所有用户, Sheet2中的第三行包含第三组中的所有用户等。

对于第2组,您将使用:

 =IF(ISNA(HLOOKUP(A2, Sheet2!$2:$2, 1, 0)), "", "X") ^ ^ 

^显示我已经改变了。

HLOOKUP工作原理如下:

HLOOKUP(lookup_value, table_array, row_index, [range_lookup])

lookup_value是您正在查找的值,这里是最终工作表中的每个用户。

table_array是公式查找的表格。 在这里,它是$1:$1 ,这样该公式将在Sheet2第1行中查找lookup_value

row_index是1,因为我们只查看一行。 你可以做一些研究,如何使用它,如果你想。

[range_lookup]是可选的,但默认为近似匹配,这不是你通常想要的。 把0表示“精确匹配”。

使用数据透视表,他是一个可以做什么的例子。 在此处输入代码