表格函数b=indirect(a1&"!a1")代表什么意思,能具体解释下&"!a1"更好。还有c=indirect(a1$a2&"!b"&b2+1)
1个回答
展开全部
首先说下A1 & "!a1", 这里返回一个文字串, 如果A1的值是"sheet1"那么 A1 & "!a1" 就是"sheet1!a1", 表面上看他代表sheet1的a1储存格的内容,但是因为是文字(外面有""),所以要加一个indirect()函数帮他脱掉文字的外衣(即引号"").
所以indirect()函数是将文字格式的参照位置的"外衣"脱掉的函数.
同样:indirect(a1$a2&"!b"&b2+1)-------这里的$是不是也应该是 "&",
括号里面是文字格式的参照位置, 表名不固定"a1&a2", 列号固定"b列",行数也不固定b2+1. 这三个 & 到一起一定是一个 "sheet1!B2" 这样或"[wkb2]sheet1!B2"的格式,这里的[] 或 ! 是组成excel公式的必要分割符,工作薄用[] 包括工作表用!和储存格分开.
不知道这样解释能否理解.
所以indirect()函数是将文字格式的参照位置的"外衣"脱掉的函数.
同样:indirect(a1$a2&"!b"&b2+1)-------这里的$是不是也应该是 "&",
括号里面是文字格式的参照位置, 表名不固定"a1&a2", 列号固定"b列",行数也不固定b2+1. 这三个 & 到一起一定是一个 "sheet1!B2" 这样或"[wkb2]sheet1!B2"的格式,这里的[] 或 ! 是组成excel公式的必要分割符,工作薄用[] 包括工作表用!和储存格分开.
不知道这样解释能否理解.
追问
首先感谢你的帮助,基本上看懂。但是我做第二个函数的目的是为了达到这样一个效果,
型号 序号 单价
11x 5 ,手动输入型号和序号后,单价自动显示。型号有很多,分别对应的序号也很多,要查找的工作表我都以它的型号命名了,它们的内容也相似,都包含一列序号,一列单价。请问函数如何修改能达到这个效果。c2=indirect(A1&A2$"!B"&B2+1)
追答
A2储存格输入型号, B2储存格输入序号.
C2输入: =VLOOKUP(B2,INDIRECT(A2&"!A:B"),2,0)
以型号名命名的表中,对应的"序号"在A列,单价在B列. 这里的INDIRECT(A2&"!A:B")返回对应型号名的表的A:B列. 当然你可以根据实际更改.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询