发布网友 发布时间:2022-04-26 17:55
共5个回答
热心网友 时间:2023-10-19 09:17
vloolkup函数中的查询区域用间接引用函数indirect即可。
例如(未加跨表引用,根据自己的情况添加):
=VLOOKUP(B2,INDIRECT("'"&LEFT(B2,FIND("-",B2))&"'!A:G"),6,)
如图所示:
热心网友 时间:2023-10-19 09:17
可以用indirect,但需要注意的是,跨工作簿引用数据时,只有当被引用的工作簿打开时,公式中才可直接用工作簿名称+工作表名称的方式,而没打开的情况下,工作簿名称前还要加上完整的路径名。一般说来,跨工作簿引用数据更好的方法是数据查询的方法,如VBA、SQL、Poweer Qurey等。
公式中的left个人偏好用replace,请自己测试下公式:
=VLOOKUP(B2,INDIRECT("[手球桁架汇总.xlsx]"&REPLACE(B2,FIND("-",E2)+1,5,)&"!$A:$G"),6,)
两点建议:
公式中的$A:$G修改为实际数据行数,好的习惯可有效减少运算量,提高公式效率。
工作表名称去掉后面的“-”,看上去会更专业,去掉后面的-号后,公式中的+1就不需要了。而你自己的原来的公式中也可少的一个&(当然有“-”,也是多余的,修改LEFT即可减少)。
热心网友 时间:2023-10-19 09:18
把图中vlookup函数第二参数外面嵌套一个indirect函数即可热心网友 时间:2023-10-19 09:18
图片中看不清楚你的公式,请写出来。热心网友 时间:2023-10-19 09:19
你好,很高兴认识你,希望你能每天过得开心