如何根据某些标准和其他工作簿中的数据创建数据验证列表?

时间:2014-11-06 09:12:34

标签: excel excel-formula spreadsheet

我有两个Excel电子表格文件(2个工作簿),一个存储所有数据,另一个想要根据上一个工作簿中的数据中的某些条件创建列表。这是两个文件: 文件A:

    A       B
1   Chen    China
2   Li      China
3   Smith   Britain
4   Tanaka  Japan
5   Hironi  Japan

在文件B上,我有两个单元格:

    A       B
    China   ?

Cell A1是中国,日本等国家/地区的列表。我没有问题。但B1需要有一个数据验证列表,从文件A中读取数据。列表不应列出所有项目,而是基于A1的值,如果A1是中国,B1将列出两个名称:陈和李

如果同一个工作簿中的所有工作表都可以实现,但无论我怎么尝试,我都无法弄清楚如何使用单独的电子表格文件。我更喜欢使用公式,但如果需要,编写VBA代码也不是问题。

谢谢!

1 个答案:

答案 0 :(得分:0)

不确定您的公式在哪里,但通过一些调整array应该有效,或者至少为您提供解决问题的基础。调整是(1)切换列,因此国家是colA; (2)用你自己的data file.xls替换sheet no.; (3)将公式放入B1并拖动到(比方说)F1。然后你需要通过每次加1来编辑公式中的行引用,即B1中的行ref将是ROW(1:1) .... C1将是ROW(2:2)

  

= IF(ISERROR(INDEX(' [data file.xls] Sheet7'!$ A $ 1:$ B $ 5,小(IF(' [数据]   file.xls] Sheet7' $ A $ 1:$ A $ 5 = $ A $ 1,ROW(' [数据   file.xls] Sheet7'!$ A $ 1:$ A $ 5)),ROW(1:1)),2))," ---",INDEX(' [数据   file.xls] Sheet7' $ A $ 1:$ B $ 5,体积(IF(' [数据   file.xls] Sheet7' $ A $ 1:$ A $ 5 = $ A $ 1,ROW(' [数据   file.xls] Sheet7' $ A $ 1:$ A $ 5)),ROW(1:1)),2))

请注意,这是一个array公式,因此shift + control + enter。希望它有所帮助。