excel 函数拖动问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 08:46:20
我想在总表里面汇总分表的数据,他们在一个工作簿里面,工作薄包括(总表,5.1,5.2,5.3~~~5.30,5.31):
总表内容
A B C D
1 日期 样品 价格汇总 产地
2 5.1 ×× ×× ××
3 5.2 ×× ×× ××
4 5.3 ×× ×× ××
分表内容这个表名字(5.1):
A B C D
1 日期 样品 价格 产地
2 5.1 ×× ×× ××
3 5.1 ×× ×× ××
4 5.1 ×× ×× ××
现在我想在总表的B2格,把全部的5.1的满足条件样品的价格汇总
公式:=SUMIF('5.1'!B2:B250,"不锈钢斜梯",'5.1'!C2:C250)
那我填B3格:=SUMIF('5.2'!B2:B250,"不锈钢斜梯",'5.2'!C2:C250)
就是说把:5.1----(改为)-----5.2哟,现在我想问有没有方法让它在拖动中自动把5.1----(改为)-----5.2----(改为)-----5.3----(改为)-----5.4
,请高手指教!!
刚刚我试过chation大师的公式了,但不知道它怎么不变数据,同时也不抱错,我很想知道(indirect("5."&(row()-1)&"!B2:B250"),"是什么意思!

总表的B2格输入:
=SUMIF(indirect("5."&(row()-1)&"!B2:B250"),"不锈钢斜梯",indirect("5."&(row()-1)&"!C2:C250"))

下拉即可

已经通过实例验证,如果出错,请检查对应数据格式与引用位置是否正确。

补充说明:
1.row()函数用来得到当前行号,B2中输入公式时,row()-1=2-1=1,因为B2所在的行为第二行,同理,下拉到B3时就变成:row()-1=3-1=2,依次类推
2.indirect为引用函数,但是只能识别文本内容,故函数内使用引号""和连字符&来连接文本,最后其内的公式就为:
indirect("5.1!B2:B250")即是5.1!B2:B250,即:引用表5.1的B2:B250数据区域,这就是你要求的。下拉之后B3引用的就是5.2!B2:B250
以此类推

该题我已实参数进行模拟过,公式不会出错,若不可行,请发原表给我,我再具体看看。
邮箱:chation19860@sina.com,或者直接hi我。

B2公式改为:
=SUMIF(INDIRECT("'5."&ROW(A1)&"'!B2:B250"),"不锈钢斜梯",INDIRECT("'5."&ROW(A1)&"'!C2:C250"))
然后向下复制即可。

若a2=5.1,a3=5.2等,则
b2=SUMIF(OFFSET(INDIRECT(a2&"!"&"$b1"),,,10000),"不锈钢斜梯",OFFSET(INDIRECT(a2&"!"&"$c1"),,,10000)),可达到你目的