VLOOKUP 和 INDEX return #N/A 引用另一个 LOOKUP 单元格时
VLOOKUP and INDEX return #N/A when referencing another LOOKUP cell
我正在研究 Excel 2010 年的作品sheet,它使用 table 引用辅助 table 来生成值列表。
更具体地说,我有两个 table:Table_Players
和 Table_ChallengeCalc
。在 Table_Players
中,我有 Players
、Experience
和 Level
列。我输入给定玩家在经验 table 下的总点数,并使用此公式,级别列告诉我玩家的级别:
Table_Players:
=LOOKUP(C6,
{-1;0;300;900;2700;6500;14000;23000;34000;48000;64000;85000;100000;120000;140000;165000;195000;225000;265000;305000;355000},{"0";"1";"2";"3";"4";"5";"6";"7";"8";"9";"10";"11";"12";"13";"14";"15";"16";"17";"18";"19";"20"})
Table_ChallengeCalc
驻留在工作簿中的另一个 sheet 上,并引用 Table_Players
中的 Level
值以从另一个 [=67] 中提取附加值列表=], Table_Difficulty
.
在我实现上面的 lookup
公式之前,我只是手动输入玩家的等级,然后 Table_ChallengeCalc
为剩余的列提取正确的值,使用它来加载玩家在 Table_Players
上的指定等级:
Table_ChallengeCalc:
=VLOOKUP([Players],Table_Players[Level],3,FALSE)
(这是正常工作时的样子):
然而,一旦我添加了第一个 LOOKUP
值,第二个 VLOOKUP
立即变成了 #N/A
并且反过来,所有其他参考列也是如此。如果我删除第一个 lookup
并再次手动输入关卡,VLOOKUP
会立即再次开始工作。我尝试使用嵌套的 INDEX
/MATCH
语句,但结果相同。只要我使用第一个 LOOKUP
,Table_ChallengeCalc
似乎就无法拉出级别值。
如果我不知道更好的话,在我看来,工作簿正在尝试 运行 VLOOKUP
同时,如果不是紧接在 LOOKUP
公式之前.关于我如何解决这个问题的任何想法,或者这是我在没有像 VBA
?[=42= 这样的附加软件的情况下达到 Excel 工作簿可以做什么的限制的事情之一]
如果我对你的问题的理解正确,那么使用以下公式应该对你有用:
=VLOOKUP([Players], Table_Players, 3, FALSE)
您目前在 table_array 中有这个:Table_Players[Level]
,但是您的“[级别]”列来自 col_index_num:公式中有 3
,因此您不应将其包含在 table 数组中。
我正在研究 Excel 2010 年的作品sheet,它使用 table 引用辅助 table 来生成值列表。
更具体地说,我有两个 table:Table_Players
和 Table_ChallengeCalc
。在 Table_Players
中,我有 Players
、Experience
和 Level
列。我输入给定玩家在经验 table 下的总点数,并使用此公式,级别列告诉我玩家的级别:
Table_Players:
=LOOKUP(C6, {-1;0;300;900;2700;6500;14000;23000;34000;48000;64000;85000;100000;120000;140000;165000;195000;225000;265000;305000;355000},{"0";"1";"2";"3";"4";"5";"6";"7";"8";"9";"10";"11";"12";"13";"14";"15";"16";"17";"18";"19";"20"})
Table_ChallengeCalc
驻留在工作簿中的另一个 sheet 上,并引用 Table_Players
中的 Level
值以从另一个 [=67] 中提取附加值列表=], Table_Difficulty
.
在我实现上面的 lookup
公式之前,我只是手动输入玩家的等级,然后 Table_ChallengeCalc
为剩余的列提取正确的值,使用它来加载玩家在 Table_Players
上的指定等级:
Table_ChallengeCalc:
=VLOOKUP([Players],Table_Players[Level],3,FALSE)
(这是正常工作时的样子):
然而,一旦我添加了第一个 LOOKUP
值,第二个 VLOOKUP
立即变成了 #N/A
并且反过来,所有其他参考列也是如此。如果我删除第一个 lookup
并再次手动输入关卡,VLOOKUP
会立即再次开始工作。我尝试使用嵌套的 INDEX
/MATCH
语句,但结果相同。只要我使用第一个 LOOKUP
,Table_ChallengeCalc
似乎就无法拉出级别值。
如果我不知道更好的话,在我看来,工作簿正在尝试 运行 VLOOKUP
同时,如果不是紧接在 LOOKUP
公式之前.关于我如何解决这个问题的任何想法,或者这是我在没有像 VBA
?[=42= 这样的附加软件的情况下达到 Excel 工作簿可以做什么的限制的事情之一]
如果我对你的问题的理解正确,那么使用以下公式应该对你有用:
=VLOOKUP([Players], Table_Players, 3, FALSE)
您目前在 table_array 中有这个:Table_Players[Level]
,但是您的“[级别]”列来自 col_index_num:公式中有 3
,因此您不应将其包含在 table 数组中。