Excel级联下拉列表,包含多个页面的表格

时间:2016-02-09 19:10:42

标签: excel excel-formula

我无法在Excel中创建依赖的下拉/级联下拉。

我在Excel工作簿的多个页面中有数据。每个表都有自己的名字。对于当前情况,数据是这样的......

3个页面中有3个表格,其中包含TableName。每个页面的第一行都是一个没有数据的空白行。

  1. 帐户
  2. 项目
  3. ProjectAllocation
  4. 帐户表

    AccountID        AccountName        ShortName 
    ----------------------------------------------
    101              Account - 1        Acnt - 1
    102              Account - 2        Acnt - 2
    103              Account - 3        Acnt - 3
    104              Account - 4        Acnt - 4
    

    项目表

    Project-ID      Account         Project-Name
    --------------------------------------------
    105            Acnt - 1         Project - 1
    106            Acnt - 1         Project - 2
    107            Acnt - 2         Project - 3
    108            Acnt - 3         Project - 4
    109            Acnt - 4         Project - 5
    

    分配表

    ID       Account       Project          EmpID
    ----------------------------------------------
    1        Acnt - 1      Project - 1       101
    2        Acnt - 1      Project - 1       102
    3        Acnt - 1      Project - 1       103
    4        Acnt - 1      Project - 2       104
    5        Acnt - 2      Project - 3       105
    6        Acnt - 3      Project - 4       106
    7        Acnt - 4      Project - 5       107
    

    现在在项目分配表中......

    我可以成功创建帐户下拉列表,从"帐户"中选择可用选项。表

    我想在Project Allocation表中填充下拉列表,以便所有项目都应该下拉,这与我选择的Account相对应。

    我尝试创建数据验证,但下拉列表已变为只读或最终出现错误(REF,Value等)。

    我在YouTube上观看了很多视频,他们试图在一个页面中完成此任务但不使用多个页面中的多个表格。

    非常感谢这方面的任何帮助。

1 个答案:

答案 0 :(得分:0)

此解决方案假设您的表按以下方式排序。它们必须保持排序,或在新数据进入时重新排序,以便工作。

  • 帐户>按帐户名称
  • 项目>按帐户
  • 分配>按项目

完全如您的样本数据中所示。

拥有如下所示的Summary表格

enter image description here

在工作簿级别输入以下命名范围:

  • 帐户:=OFFSET(account!$C$1,1,0,COUNTA(account!$C:$C)-1,1)
  • 项目:=OFFSET(project!$C$1,MATCH(Summary!$C$2,project!$B:$B,0)-1,0,COUNTIF(project!$B:$B,Summary!$C$2),1)
  • 分配:=OFFSET(project!$C$1,MATCH(Summary!$C$2,project!$B:$B,0)-1,0,COUNTIF(project!$B:$B,Summary!$C$2),1)

然后(使用上面的表格),进行以下数据验证:

  • C2 =帐户
  • D2 =项目
  • E2 =分配