excel,根据两列之间的关系从一列中提取唯一值

excel,根据两列之间的关系从一列中提取唯一值,excel,Excel,我有一个用户及其会话ID的列表。我需要为每个用户提取唯一的会话ID,最好使用公式 我在下面放了一张我试图实现的简化图片 我尝试了以下数组。。。但它并没有将输出限制为特定用户 {=INDEX(session_ids, MATCH(0, COUNTIF(D$1:D1, session_ids),0))} 如果有人知道我缺少的那部分配方,任何帮助都将是巨大的 谢谢您的公式没有考虑用户名。您需要筛选与用户名匹配的会话ID =INDEX(IF(user_id="user2",session_ids,"

我有一个用户及其会话ID的列表。我需要为每个用户提取唯一的会话ID,最好使用公式

我在下面放了一张我试图实现的简化图片

我尝试了以下数组。。。但它并没有将输出限制为特定用户

{=INDEX(session_ids, MATCH(0, COUNTIF(D$1:D1, session_ids),0))}

如果有人知道我缺少的那部分配方,任何帮助都将是巨大的


谢谢

您的公式没有考虑用户名。您需要筛选与用户名匹配的会话ID

=INDEX(IF(user_id="user2",session_ids,""), MATCH(0, COUNTIF(D$1:D1, IF(user_id="user2",session_ids,"")),0))
编辑

OP的解决方案比我提出的要好,因为它避免了创建过滤数组,而过滤数组是由公式中的IF函数(两次)完成的。以下是为了与我的公式保持一致而在中稍微修改的更有效的公式:

=IFERROR(INDEX(session_ids, MATCH(0, IF(user_id="user2", COUNTIF(D$1:D1, session_ids)),0)),"")

这与我刚刚提出的另一个解决方案相比如何<代码>=IFERROR(索引(会话id,匹配(0,如果(用户id=E1,计数IF(D$1:D1,会话id)),0)),“”)是否有一个在处理方面特别出色的?或者两个人中的一个有可能出错?我错过了。您的效果更好,处理速度更快!你能用我的公式更新你的答案吗?作为生成答案的替代方法。我想给你所有的帮助和处理信息的要点