=SUM(OFFSET(I7,0,0,1,COLUMN(Current)-COLUMN(Start)+1)) 请帮忙解释此公式意图 谢谢

2024-12-02 21:02:36
推荐回答(2个)
回答1:

你先在名称管理器中看看,Current和Start这两个名称是如何定义的,应该是分别定义的某一个单元格(有可能是公式,但公式的结果应该是指向某一个单元格),通过COLUMN函数对Current和Start会算出具体的值,这个值就是该单元格的列数,比如单元格是A1就返回1,B1就返回2,C1就返回3……
那么COLUMN(Current)-COLUMN(Start)+1也会得到一个具体的值,假设为K
OFFSET(I7,0,0,1,K)则是表示以I7单元格为起始,1行K列这个区域,假设算出来K=3,那么就是表示I7、J7、K7这三个单元格
最后用SUM函数求I7、J7、K7之和。

终于讲完了,累……

回答2:

计算第7行 的I列至当前列的数值总和

COLUMN(Current)-COLUMN(Start)+1 表示 起始列 至 当前列 的总列数(假设为x)

OFFSET(I7,0,0,1,COLUMN(Current)-COLUMN(Start)+1)
则表示返回 第7行的 I列至 I+x-1 列的值

总公式则表示以上列的值的总和。