【发布时间】:2021-07-07 14:33:30
【问题描述】:
问题是如果第 23 行中的 vlookup 有效,为什么值不传递到第 26/27 行的嵌套 vlookup 中?如何在不使用 if 语句的情况下获取嵌套的 vlookup 以获取值 table1?
不知道如何分享excel工作簿,如果有人知道,请在cmets中发帖。
# Defined Tables
table1 table2
Bob A Tim C
Jim B Karl D
# Defined Name
tables (defined name)
1 table1 Sheet1!$A$3:$B$4
2 table2 Sheet1!$C$3:$D$4
# Table Setting
Table Setting 1 table1 <IF(B12=1,B8,B9)
# Works manual with table1/2 text entered
Bob A <VLOOKUP(A15,table1,2,FALSE)
Tim C <VLOOKUP(A16,table2,2,FALSE)
# Works based on changing the table settings
Bob A <VLOOKUP(A19,IF(B12=1,table1,IF(B12=2,table2,"ERR")),2,FALSE)
Tim #N/A <VLOOKUP(A20,IF(B12=1,table1,IF(B12=2,table2,"ERR")),2,FALSE)
# DOESN"T WORK
table1 <VLOOKUP(B12,A8:B9,2,FALSE)
# Although it does get the name the formula below doesn't seem to be using the name like the if condition did
Bob #VALUE! <VLOOKUP(A25,VLOOKUP(B12,A8:B9,2,FALSE),2,FALSE)
Tim #VALUE! <VLOOKUP(A26,VLOOKUP(B12,A8:B9,2,FALSE),2,FALSE)
【问题讨论】:
-
您尝试查找单个值的第二列。您需要使用 INDIRECT,但由于您已经在使用 VBA,因此请搜索 VBA 解决方案,避免使用易失函数 INDIRECT。
-
我看到它不是代码,而是数据/文本。试试
=VLOOKUP(A25,INDIRECT(VLOOKUP(B12,A8:B9,2,FALSE)),2,FALSE)。请注意,INDIRECT 会使公式不稳定(在文件中的每次更改中重新计算),因此可能会减慢速度。
标签: excel excel-formula vlookup