我正在尝试在两个不同电子表格中的两个不同工作表之间使用VLOOKUP函数。 在VLOOKUP的“范围”参数中,我通过IMPORTRANGE(different_spreadsheet_url,range_string)插入了一个范围,尽管我搜索的值出现在输入范围中,但我得到了空值。
我认为在VLOOKUP中使用IMPORTRANGE会有一些问题,但我无法弄清楚。
如果有人可以帮助我或者提出解决我问题的另一种方法,我会很高兴。
谢谢。
答案 0 :(得分:0)
由于以下原因,您遇到了非常不寻常的问题:
#playerphysicals is a dataframe of factors that contains various physiological measurements of 1328 NBA athletes.
playerphysicals1<- tibble(playerphysicals=c("5' 10.5\"", "6' 1\""))
out <- playerphysicals %>%
mutate(first = as.numeric(str_extract(playerphysicals$Wingspan, "[^\']+")),
second = str_extract(playerphysicals$Wingspan, '[\\d\\.]+\"$'),
second = as.numeric(str_replace(second, "\"", ""))/100,
x_num = first + second) %>%
select(-first, -second) %>%
as.data.frame
out
#output
x_num
<dbl>
NA
NA
NA
,但要选择VLOOKUP
不喜欢的左侧列。VLOOKUP
-INDEX
解决方法,因为您想使用MATCH
,它可以与ArrayFormula
一起使用,但不能使用VLOOKUP
。因此,我们需要做的是在使用INDEX
之前交换源工作表中的列。我们可以使用VLOOKUP
和QUERY
反向的Columns来实现,就像这样:
select
或更可读:
=ArrayFormula(VLOOKUP(FILTER(A:A,A:A),Query(IMPORTRANGE("https://docs.google.com/spreadsheets/d/1nGI6-Vwv_zX-0DfN8zFwVYJTd00iXY3HLcSlU_rjhEo/edit#gid=0","example1!A:B"),"select Col2,Col1"),2,0))
我还继续使用=ArrayFormula(
VLOOKUP(
FILTER(A:A,A:A),
Query(
IMPORTRANGE(
"https://docs.google.com/spreadsheets/d/1nGI6-Vwv_zX-0DfN8zFwVYJTd00iXY3HLcSlU_rjhEo/edit#gid=0",
"example1!A:B"
),
"select Col2,Col1"
),
2,
0
)
)
并使用了A列的所有非空白,因此您可以根据需要扩展数据。