我有一个列表和一个查找表。该列表将位于 A 列中,查找表将位于 C 列和 D 列中。C 列中的每个单元格都包含文本并且是唯一的。 D 列对于 C 列的每个元素都有一个对应的值。A 列包含一个未排序的列表,其中包含 C 列中文本的重复项,但 C 列之外没有任何内容。下面显示了一个简单的示例
我最终想要的是一个数组,其中包含从表中查找到的所有 A 列的相应值。所以在这个例子中我想要
{1,2,1,2,2,2,1,1,2}
我知道这可以通过使用来完成
=vlookup(B9,$C$1:$D$2,2,FALSE)
在 B 列的每个单元格中并将该列作为数组 {$B$1:$B$9} 抓取。但是,我需要跳过中间人并省略另一列中的任何内容,因为这需要同时在各种查找表上执行但未连接,即不是多重查找,我只需要在不同的查找表下查看相同的列表 A对应值D的集合。
我完全不知所措,这看起来很简单,但我已经尝试了几个小时并且一直在兜圈子。我记得读过你不能将 vlookup 输出到数组,而且我在尝试使用 match 时也没有太多运气。
最佳答案
如果您想继续使用VLOOKUP:
VLOOKUP(T(IF(1,+A1:A9)),C1:D2,2,0)
这里使用 T 是因为 A1:A9 中的值是文本,而不是数字(否则我们将使用 N - 包含混合数据类型的范围将需要不同的方法)。
http://excelxor.com/2014/09/05/index-returning-an-array-of-values/
问候
关于excel - 如何在 Microsoft Excel 中获取 vlookup 值数组而不需要额外的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34868991/