根据输入的值查找值列表,并返回组中的所有值

时间:2015-09-29 06:31:27

标签: excel vba excel-vba

我有一个问题,我希望有人可以帮我解决使用VBA问题,我有一个看起来像这样的表:

 Group No.(Key) | Material
 9400028741 |   600-1014:TELSPEC
 9400028741 |   597/29:TELSPEC
 9400030162 |   BFD328507:ERICSSON
 9400030162 | BFD328507/11:ERICSSON
 9400059657 | BMS 404 030/2:EMERSONRGY
 9400059657 | INV-1000VA RM:CODECOM
 11GHZODU   | GE9234:SIAE
 11GHZODU   | GE9348:SIAE
 12647I     | Q9662A:NEC
 12647I     | Q9662B:NEC
 12653I     | Q9668A:NEC
 12653I     | Q9668B:NEC

我需要的是能够输入材料列表(来自不同的组),然后输出属于我开始输入的材料属于的组的所有材料的输出。

因此,如果我在A1-A3中输入以下材料:

 BFD328507:ERICSSON
 Q9668B:NEC
 GE9234:SIAE

然后输出为:

 BFD328507:ERICSSON
 BFD328507/11:ERICSSON
 BMS 404 030/2:EMERSONRGY
 INV-1000VA RM:CODECOM
 Q9668B:NEC
 Q9668A:NEC
 Q9662B:NEC
 Q9662A:NEC
 GE9234:SIAE
 GE9348:SIAE

1 个答案:

答案 0 :(得分:0)

是否必须使用VBA?如果没有,那么您可以使用excel公式本身完成任务 以下是我认为可能有用的内容:请考虑以下数据。

Group No(A1)|Material(B1)|Enter Material(C1)|GetGroupNo(D1)|Final_List(E1)
1|Mat_1
1|Mat_1.1
1|Mat_1.2
2|Mat_2
2|Mat_2.1
3|Mat_3
3|Mat_3.1
3|Mat_3.2
3|Mat_3.3
4|Mat_4
5|Mat_5
5|Mat_5.1
  1. 在单元格C2中 输入要查找的材料

  2. 在单元格D2中输入公式 = LOOKUP(C2,B:B,A:A)

  3. 在单元格E3中输入公式 = IF(A:A = D $ 2,B:B,"")

  4. 现在您有一个属于该组的所有材料的列表。