2017-06-13 144 views
-1

我有一张表,其中包含表名customer_id和Project_id.For每个客户id各种项目显示。当我尝试通过选择所有它不是come.for前创建数据验证。 CUSTOMER_ID PROJECT_ID 1 1.1 1 1.2 2 2.2 2 2.3 和喜欢that.please告诉我一些解决方案。在Excel 2013中创建动态下拉列表

+0

创建一个唯一的客户ID列表,然后使用该列表的结果来获得匹配的项目。显示一些示例数据以及您尝试的内容。 –

+0

并与本网站上的一些研究,你可以找到:https://stackoverflow.com/questions/19730067/excel-how-to-create-dynamic-data-validation-list-based-on-data-table? rq = 1,这几乎完全符合你的要求... –

回答

0

这真的取决于你想要的东西,但由于你的问题不是那么详细,我想你的意思是?

您可以通过以下方式在工作表中的数据创建数据验证:

  • 选择要验证是对
  • 功能区中的表,单击数据选项卡,然后数据验证
  • 选择“允许列表”的来源吧
  • ,选择单元格与允许值

另一种方法是使用vba或vb.net宏创建数据验证程序。在您的宏说:

Dim range as Excel.Range = listSheet.Range("A1") 
range.Validation.Add(Excel.xlDVType.xlValidateList, Excel.xlDVAlertStyle.xlValidAlertInformation, Excel.xlFormatConditionOperator.xlEqual, "Option1; Option2") 
0

我猜你想要的是两个下拉列表,第二取决于第一个选择的价值? (请详细说明你的问题)。要做到这一点,我想还有其他的方式,但是这是我平时做的:

考虑到,我一直使用的名称来指代范围,而不是引用,以提高readness。如果你有疑问要做到这一点,阅读Use names in Excel formuas

  1. 在你的书,与主值一列创建一个表或范围内的某处。
    • 我点名的价值观master_list
  2. 创建一个表或具有两列的地方在你的书的范围的范围内。第一列包含主/查找值,第二列包含依赖值。
    • 我已命名的查找值(这是,在第一列中的值)作为dependent_list
    • 我已命名headingdependent_list上方的细胞(例如,列表,如果依赖关系表开始在A2,该heading是A1
  3. 订购名单
    • 如你所愿值出现在下拉列表中的master_list是有序的。
    • dependent_list必须按第一列(主值)中的值排序。 master_listdependent_list中的顺序是否相同并不重要,但dependent_list的主列中的相同值必须在一起。
    • dependent_list第二列中的订单将决定从属下拉列表中的订单。
  4. (可选)您可以定义一条消息,以在没有选定主值时在dependent_list中显示。我已将它命名为msg_error
  5. 点击你想上哪儿主下拉细胞,蚂蚁转到数据验证菜单,然后选择:
    • 允许:列表
    • 来源:添加配方=INDIRECT("master_list")
  6. 我已将单元格的主下拉列表命名为key_value
  7. 单击您想要依赖下拉列表的单元格,然后转至数据验证菜单,然后选择:
    • 允许:列表
    • 来源:添加配方=IF(key_value="";msg_error;OFFSET(heading;MATCH(key_value;dependent_list;0);1;COUNTIF(dependent_list;key_value);1))

请注意Excel函数依赖于语言的语言,我有把它们翻译成英文,所以也许会有错误。

+0

好的抱歉,不完整的问题!我有主表,其中包含帐号和项目相关的帐号。我创建了单独的下拉列表和它的工作,但我的任务是创建一个依赖于帐号的项目依赖下拉列表,当我尝试做我失败。所以我需要从该表中提取数据到新工作表并执行此任务 – vish

+0

然后,我认为您应该可以使用我编写的提示来完成此任务。我在一张辅助工作表(键主表,键值依赖表和缺省的消息 - 可以是空的)以及主表中的下拉列表中有数据。 –