1

我在 Excel 中创建一个我认为是数组的函数时遇到问题。我对数组没有太多经验,并且尝试过 Google,但没有找到适用于我的情况的示例。

问题:

第 1 行(到 1000 行)包含一个用户,其直接领导层向上增加了 6 个用户。这些都是文本值。特定行的所有领导者都是唯一的。

我有一个单独的列(M 列),它是我要与每一行进行比较的用户列表。我想将列 M 与第 1 行用户进行比较,如果匹配,则返回匹配的名称。

例子

row 1 | user1 | John  | Rick | Mary | Paul | Jim | {matched leader goes here - Mary}

row 2 | user2 | Rick  | Mary | Paul | Jim  | Ann | {matched leader goes here - Mary}

row 3 | user3 | Terry | John | Rick | Mary | Paul | {matched leader goes here - Mary}

row 4 | user3 | Sylvia | Steve | Tom | Eric | Lorriaine| {matched leader goes here - Lorraine}

M 列(副总裁列表)

 - Mary
 - Ken
 - Lorraine

我试过 VLOOKUP,但我的 lookup_value 是范围(M 列),我不知道如何管理它。我开始了嵌套 IF,但我必须管理有一种更直接的方法来做到这一点。

任何帮助,将不胜感激

4

2 回答 2

0

这有点罗嗦,但应该做的工作。

单元格 G1 的公式(可以复制到 G2..G1000 中)

=IF(ISNA(VLOOKUP(A1,$M:$M,1,0)),"",VLOOKUP(A1,$M:$M,1,0))
&IF(ISNA(VLOOKUP(B1,$M:$M,1,0)),"",VLOOKUP(B1,$M:$M,1,0))
&IF(ISNA(VLOOKUP(C1,$M:$M,1,0)),"",VLOOKUP(C1,$M:$M,1,0))
&IF(ISNA(VLOOKUP(D1,$M:$M,1,0)),"",VLOOKUP(D1,$M:$M,1,0))
&IF(ISNA(VLOOKUP(E1,$M:$M,1,0)),"",VLOOKUP(E1,$M:$M,1,0))
&IF(ISNA(VLOOKUP(F1,$M:$M,1,0)),"",VLOOKUP(F1,$M:$M,1,0))
于 2013-03-29T03:13:54.177 回答
0

您的数据结构使任何数据处理变得困难。我推荐以下内容:

ROW NO.| USER  | PERSON | LEADER?
row 1  | user1 | John   | 0
row 2  | user1 | Rick   | 0
row 3  | user1 | Mary   | 1
row 4  | user2 | Rick   | 0
row 5  | user2 | Mary   | 1
  1. 您可以轻松地将原始数据结构(7 列)转换为上述数据结构(2 列 - 用户、人员)
  2. 您可以添加第三列,指示该人是否是领导者 (Mary => 1)
  3. 最后很容易找到领导者

请注意,使用此数据结构,所有公式都将简单明了。您也可以轻松创建不同类型的报告。

I understand that visually the 7-column structure looks more appealing, however it is a trade-off for the data processing ability. Thus I suggest you convert the 7-column structure to a 2-column one with simple formula first. In this way you can benefit from both structures.

于 2013-03-29T11:03:29.580 回答