EXCEL 公式:=INDIRECT("sheet2!"&ADDRESS(ROW(A1),(COLUMN(A1)-1)*3+1)) 的意思?

问题描述:

EXCEL 公式:=INDIRECT("sheet2!"&ADDRESS(ROW(A1),(COLUMN(A1)-1)*3+1)) 的意思?
如题,请问在上述公式中的各个部分是什么意思?改动后有何结果,可以再加分,

=INDIRECT("sheet2!"&ADDRESS(ROW(A1),(COLUMN(A1)-1)*3+1))
先讲最后一部分的:
ADDRESS(ROW(A1),(COLUMN(A1)-1)*3+1)
row(A1)=1,取得A1单元格的行号
column(A1),取得A1单元格的列号.
(COLUMN(A1)-1)*3+1,这个是以3的倍数递增.即数列:1,4,7,10,……
所以ADDRESS(ROW(A1),(COLUMN(A1)-1)*3+1)变成ADDRESS(1,(1-1)*3+1)=$A$1
ADDRESS函数的意思是:按照给定的行号和列标,建立文本类型的单元格地址.相见excel帮助.
"sheet2!"&ADDRESS(ROW(A1),(COLUMN(A1)-1)*3+1)) 就变成("sheet2!"& $A$1) =sheet2!$A$1.
INDIRECT函数的意思是:
返回由文本字符串指定的引用.即引用单元格的内容.
=INDIRECT("sheet2!"&ADDRESS(ROW(A1),(COLUMN(A1)-1)*3+1))
的意思就是返回sheet2表中A1单元格的值.