【问题标题】:Auto populating a master list from multiple cells in multiple worksheets从多个工作表中的多个单元格自动填充主列表
【发布时间】:2017-09-22 05:39:27
【问题描述】:

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

在个人的工作表中,我已经进行了设置,因此如果在单元格 D7 中标记了“x”,那么他们的名字将在隐藏的单元格 F7 中生成,但不确定此步骤是否有用。任何建议将不胜感激!谢谢!!

【问题讨论】:

    标签: excel list auto-populate


    【解决方案1】:

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

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

    在主列表中约翰姓名旁边的“已标记”列中,您将输入:

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

    每次您在 John 的工作表的 B2 或 G6 中添加一个“x”时,它也会标记主列表。

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

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

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

    【讨论】:

    • 非常感谢您的回复!!另一个问题...或可能打嗝...如果工作表名称是通用名称,例如“学生 1”,并且当我们使用工作表时,我们将更改工作表的名称(即“John”),是否存在一种让主列表帐户对此进行说明的方法??
    • 根据您的建议,如果我理解正确,每个名称都将分配到主列表中的特定行。每一行是否有任何方法来说明文档中的任何工作表,并且一旦在主列表中填充了名称,后续行将读取每个附加工作表的公式,不包括已填充的名称?然后每次填充一行时,主列表中不再考虑该名称?
    • @ErinAnderson 您可以使用公式=RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))) 获取工作表名称并将'JohnWorksheet' 替换为。
    • @ErinAnderson 我很难理解你想要用这些行来完成什么,这些行占文档中的任何工作表。你能试着解释一下你的总体目标,或者你希望用这个做什么吗?也许这可能更容易作为一个单独的问题来解决;你可以链接到这个然后展开它。
    猜你喜欢
    • 2019-04-18
    • 1970-01-01
    • 1970-01-01
    • 2015-10-14
    • 1970-01-01
    • 2021-04-13
    • 2017-10-19
    • 1970-01-01
    • 2017-04-16
    相关资源
    最近更新 更多