如何在sheet2中显示引用sheet1的结果而不在工作表2中插入空行?

时间:2014-04-11 19:05:42

标签: excel excel-formula

我有一个工作簿,其中包含名为" MAIN"的工作表。 MAIN包含名称(col A)电子邮件(col B)和cols C到F,其中包含标识特定兴趣的代码。兴趣是" NC"北欧中心(Col c)," TM"用于道路维护(col d),SS用于滑雪交换(col e)等。因此,一个人可能有兴趣帮助NCSS。如果是这样,那个人姓名和电子邮件的行将在col C中NC和col E中SS

我的工作表(在同一工作簿中)名为NCTMSS等。这些单独的工作表会列出所有具有这些代码的个人的姓名和电子邮件主要工作表。我希望这些工作表只列出对该特定领域感兴趣的人的姓名和电子邮件。

NC工作表中,我在col A中有一个如下所示的公式:

=if(MAIN!C:C="NC",MAIN!A:A,"")  

该公式对整个col A都有效。此公式将列出工作表NC中所有人员的姓名,这些人员在MAIN中以col C编码NC。但是,如果某人未列出NC,我会在工作表NC中显示一个空白行。我不想要这样做。

例如,如果MAIN中列出的第一个和第三个名称在col C中有NC,则NC工作表如下所示:

name 1

name 3

我希望NC看起来像:

name1
name3

我该怎么做?

1 个答案:

答案 0 :(得分:0)

在表格NC A1中,请尝试:

=IFERROR(INDEX(MAIN!A$1:A$99, SMALL(IF(ISBLANK(MAIN!C$1:C$99),"",ROW(MAIN!C$1:C$99)-MIN(ROW(MAIN!C$1:C$99))+1), ROW(1:1))),"")  

这是一个数组公式,因此输入需要 Ctrl + Shift + 输入。我将此处的范围限制为来自工作表MAIN的99行,因为当应用于大范围时,数组公式会对速度产生负面影响,并且您似乎可能需要此公式的版本至少三次。但是,如果您考虑使用超过98个名称,请相应地调整公式中的99

对MAIN中其他三列中的每一列重复调整引用以适应。例如,对于工作表TM,将“C”列引用为“D”。