从多个工作表中的多个单元格自动填充主列表

时间:2017-09-21 18:00:10

标签: excel list auto-populate

我正在尝试根据几个工作表中的数据创建一个自动填充的主列表。例如,每个工作表都分配给不同的个人,如果特定的框标有" x",我希望将该个人的名称填充到主工作表的列表中这样我就可以跟踪哪些人已被标记/标记。部分原因是如果主工作表上的单元格A1已经有个人姓名,那么我希望该规则适用于单元格B1(减去A1中先前命名的个体),依此类推。此外,每个工作表都有多个单元格,其中个人可能会被标记为" x" (即D7,D13,D20等)。

在我个人的工作表中,我已将其设置为如果" x"在单元格D7中标记,然后它们的名称将在隐藏的单元格F7中生成,但我不确定此步骤是否有用。任何建议将不胜感激!谢谢!!

1 个答案:

答案 0 :(得分:0)

如果您要在主表上创建一个包含所有个人姓名的表格,您可以使用IF语句来确定是否在其工作表上标记了“x”,如果是,则显示其名称。如果您愿意,您可以过滤掉主列表中没有任何标记的个人。

  

示例:“John”的工作表有2个可以标记的单元格:B2和G6。   您的主列表至少包含两列:“名称”和“已标记”。

在主列表上John姓名旁边的'已标记'列中,您将输入:

=IF(OR('JohnWorksheet'!$B$2="x",'JohnWorksheet'!$G$6="x"),"x","")

每次在John的工作表中将“x”放在B2或G6中时,它也会标记主列表。

对于一个稍微复杂的公式,可以接受任何输入作为标志,而不只是“x”,你可以把:

=IF(OR(ISBLANK('JohnWorksheet'!$B$2)=FALSE,ISBLANK('JohnWorksheet'!$G$6)=FALSE),"x","")

您可以对“已标记”列应用过滤器以删除未标记的个人。从列表中过滤掉未标记的名称会有一个小小的打嗝:如果数据发生变化,Excel中的表格过滤器不会自动更新;您必须通过单击表格中的某个位置手动刷新它们,进入“数据”选项卡并单击“排序和过滤”下的“重新应用”。如果你想使用一点VBA,你可以把它变成键盘快捷键,或者甚至在单元格更新时自动发生。