【发布时间】:2016-02-22 16:52:34
【问题描述】:
我有大量的数据(大约 50x2000)数据,它们基本上采用以下形式,尽管数据集如前所述更大。
DistrictNo LocationA LocationB LocationC
----------- --------- --------- ---------
0001 L1 L2 L3
0002 L1 L4
0003 L1 L5 L6
0004 L2
每个区可以有任意数量的位置,同一个位置可以在任意数量的区中,但 DistrictNo 永远是唯一的。
我需要一个公式(或 VBA),例如,当“L1”输入到单元格时,返回一个包含 0001、0002、0003 和 0004 的列表,当输入“L2”时返回 0001 和0004,当输入“L5”或“L6”时只返回0003。位置在哪一列无关紧要,我只需要行。
目前我对每列使用多个 MATCH 公式,然后在 MATCH 公式返回的行上使用 VLOOKUP,但问题是在上述数据集上,如果输入 L1,它仅返回 0001,因为 MATCH 仅处理第一个值,但如果输入 L2,它将返回 0001 和 0004,因为它们位于不同的列中。
【问题讨论】:
-
也请分享你的公式
-
任何公式都会让人望而生畏。因为它需要将 50 列添加到:
($B$2:$B$2000 = "L1") + ($C$2:$C$2000 = "L1") + ...以及使用 Small() 的数组公式来获取完整列表。 vba 是要走的路。
标签: excel excel-formula