EXCEL表格引用多表数据设置公式的便捷方法

我在一个EXCEL表里面有几十个分页,每个分页里面有很多数据,现在我新建了一个分页用来计算另外几个分页里的数据,比如我在一个单元格设置公式“=I7-('12.7白班'!G28/3.8)”,下一行就要设置公式“=I8-('12.8白班'!G28/3.8)”,这样弄每一个我都要手动操作更改,因为复制粘贴后会变成这样“=I8-('12.7白班'!G29/3.8)”,也就是说分页号不会自动变化,分页里面的单元格自动变化了,我要的是能复制后分页号自动换到下一个而单元格还是相同位置的,不知道大神们有没有看明白我的意思?亟待解决这个问题啊,谢谢各位了!
表格是这样的,我需要S7单元格里的公式“=I7-('12.7白班'!G28/3.8)”复制到S8、S9……单元格里面后变成“=I8-('12.8白班'!G28/3.8)”、“=I9-('6'!G28/3.8)”……以此类推

1.新建一个EXCEL表格,打开

2.自己输入一个简单工资表

3.在第二个工作表那做一个工资查询,鼠标点选要自动引用的单元格,在“公式”菜单栏下面的菜单项“查找与引用”选择“VLOOKUP"函数

4.表格弹出一个对话框,在第一行那选择要引用的姓名列

5.在对话框的第二行那选择要引用的前面做的工资表

6.第三行输入工资表中被引用项的列数“2”,第四行默认为“0”

7.在工资查询表中输入姓名,则工资项的工资会自动被引用出来

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-12
如果后面的sheet名变了,是希望公式一起变吗?
那么需要将这个工作簿中所有工作表的名称取出来放在公式里。为了公式简洁易读,可以单独放在一列
先说怎么取出所有sheet名:
首先按CTRL+F3,打开名称管理器,新建一个名称,比如SheetName,在下面的”引用位置“输入
=GET.WORKBOOK(1)
确定,关闭名称管理器
在你的计算表插入一列写入公式,假设放在A列,具体放哪你自己定。
=INDEX(SHEETNAME,ROW(A1)),下拉,就可以显示出所有的工作表名了,这里工作表名前面是带着[文件名]的。
如果希望只显示工作表名,那么把公式改为:
=REPLACE(INDEX(SHEETNAME,ROW(A1)),1,FIND("]",INDEX(SHEETNAME,ROW(A1)))就可以了。
最后在对应的行,写入你需要的公式:
=I7-INDIRECT(A1&"!G28")/3.8
这个公式里的A1就是你放第一个表名的单元格。

excel 2010亲测正常。下拉就可以了。试试吧。不行再找我。追问

请问是每一个页面都要用名称管理器设定一个名称吗?名称是否相同?

追答

整个工作簿设置一次就可以了

第2个回答  2014-12-12
用公式:
=I7-INDIRECT("12."&6+ROW(A1)&"白班!G28")/3.8
第3个回答  2014-12-12
=I7-(INDIRECT("'12."&ROW(A7)&"白班'!G28")/3.8)
就行了追问

是解决了单元格不变的问题,但是我需要前面12.7白班变成下一个表的名字,例如变成12.8白班,这样怎么做到呢?

追答

改了公式
=I7-(INDIRECT("'12."&ROW(A7)&"白班'!G28")/3.8)

追问

这样还是不行,因为'12.7白班'是一个分页表的名字,他不一定都是白班,会有例如12.9夜班、12.10白班、12.11夜班,这样的。还是很感谢你的及时回答,看看还有木有别的好办法?

追答

=I7-INDIRECT("'"&B7&C7&"'!G28")/3.8
B7、C7为前面对应日期和黑、白班的单元格。

追问

这个方法可行啊,哈哈,太感谢了,你这个办法是最好的!

本回答被提问者采纳
相似回答