我可以从同一行参考单元中获取细胞包含,但可以从不同的列中获取



我有一张具有唯一标识符的资产。该表被命名为"资产"。标识符在B。

同一工作簿中的另一张表格为"位置"。

如果输入位置中的唯一资产标识符!想要位置!我显示"资产!

如果不使用vlookup或间接?

这是可能的

我不想要vlookup的原因是因为我希望能够过滤和排序,如果我在工作簿中其他公式的复杂性重新组织列,则间接会很麻烦。

vlookup和间接都提供了我想要的基本功能,但它们并不理想。我目前正在做的是在列位置进行比赛!f。这给了我排名。然后在位置!H我使用间接。

我目前正在使用以下公式:

  • 位置!f2: =MATCH(E2,Assets!$B:$B,0)(这找到了行数(
  • 位置!H2:=INDIRECT("'Assets'!G"&F2)(这显示了我想要的值(

我希望有一种更好的方法可以达到相同的结果,因为我不想记住手动更新每个"间接" -formula。特别是因为我不会是唯一在此工作表上工作的人。

如果vlookup不起作用(正如泰勒提到的..我相信它应该"应该"(..但是,如果不是,那么此选项可能是您追求的。

不要使用间接,用户偏移。

我经常使用匹配 偏移的组合。

so在H2中(在位置表(中。您的公式将是这样的:

=MATCH(E2,Assets!B:B,0)

有效地为您提供了比赛的行#(如果没有匹配,则为错误(。然后在其他列中,您可以在偏移函数中使用它:

假设,在Col I2中,您可以使用匹配返回的值:

=OFFSET(Assets!E1,I2-1,0,1,1)

转化为:转到资产表,单元格E1。向下沿等于单元格I2中值的一行(负1(。(即,如果i2中的值为4,即" 4"。我们需要"下降" 3行,从E1 ..到达E4(下一个值" 0"是列偏移..所以0 ..不要更改列。1,1是返回集的大小(是的,偏移可以返回范围..用于动态列表等方便(。就您而言,只有一个单元格是您想要的。

然后,您可以重复其他列的偏移。假设在Col J2中。

=OFFSET(Assets!T1,I2-1,0,1,1)

希望有帮助!

您仍然应该能够使用vlookup而不会在分类/过滤时混乱。您只需要确保您在方程式中使用无限范围即可。例如:

  • 不好:VLOOKUP(A1, B1:C5, 2, 0)当数据被过滤或通过排序重新排列时,这可能会失败。
  • 好:VLOOKUP(A1, B:C, 2, 0)这不在乎您查找的界限,因此它仍然可以工作,我相信它仍然会检查被过滤的细胞。

最新更新