怎么将多个工作簿中固定区域合并到另外一个工作簿中,同时工作簿名称也加入其中?
如何将excel中多个工作簿(sheet)合并到一个工作簿里
新工作表第一行为表头,姓名、课程名、成绩分别在ABC三列中,A2单元格公式如下:
=学生表!B2
将公式向下复制直到出现0为止。
B2单元格公式:
=VLOOKUP(VLOOKUP(A2,学生表!B$2:C$10000,2,0),课程表!A$2:B$10000,2,0)
将公式向下复制到相应行。
建议在“成绩”前面插入两个辅助列(学号C列、课程号D列)以便索引成绩。
C2单元格公式:
=VLOOKUP(A2,IF({1,0},学生表!B$2:B$10000,学生表!A$2:A$10000),2,0)
将公式向下复制到相应行。
D2单元格公式:
=VLOOKUP(B2,课程表!B$2:C$10000,2,0)
将公式向下复制到相应行。
E2单元格(成绩)公式:
=INDIRECT("成绩表!C"&SUMPRODUCT((成绩表!A$2:A$10000=C2)*(成绩表!B$2:B$10000=D2),成绩表!C$2:C$10000))
将公式向下复制到相应行。
全部数据过来后,可用"复制"->"选择性粘贴"/"数值"将其固定下来。
最后删除CD列即可。
怎样合并多个工作簿到一个工作簿
在sheet1/sheet2/sheet3那个地方单击右键,选择第四项“移动”,“至”你要的主工作表文件里面去。依次这样子做就可以
Excel 多个工作簿合并到【一个工作簿】内
1.用dir()函数列出所有的欲合并Excel的路径,用于2的open循环之中。
2.打开E:\test.xlsx:Set xlbook = Application.Workbooks.Open(Filename:="E:\test.xlsx")。
3.复制工作表数据:xlbook.Sheets("表名").Copy After:=
4.循环open,copy。
excel 多个工作簿合并
合并多个工作簿最笨的方法当然就是复制粘贴了,如果工作簿数量少,复制粘贴也不失为一个不用想事的办法。
而较好的方法主要有:sql查询合并、power qury查询合并、vba编程合并,以及其他第三方程序编程合并。下面介绍用sql语言合并的方法,sql语句合并只需要一条语句就能合并任意多个工作簿,且合并后的工作簿与所有数据源建立了连接,数据源更改(添加、删除、修改)后,刷新合并后的工作簿中的工作表,即可更新到一致。
1. 如图,是待的合并的3个工作簿,3个工作簿中各有一个工作表,结构相同,但数据不同。
2. 新建一个工作簿,用于合并多个工作簿数据。
3. 在新工作簿的工作表中,数据菜单——获取和转换数据——现有连接,选择浏览更多,找到要合并的工作簿。
4. 选择任意一个待合并的工作簿,双击或点击下面的“打开”,进入导入数据向导。向导中将显示所选择工作簿中所有工作表及命名表格、区域等,任意选择一个(一般直接要导入的工作表),图中因为所选择的工作表仅一个工作表,所以只显示了唯一的一个工作表。选择“确定”后,进入编辑连接对话框。此时,有两个选择都可以:一、选择数据目标位置后确定,将直接导入选择的工作簿中的工作表,然后再编辑连接合并另外的工作簿中的工作表;二、点属性编辑连接,一次完成合并工作簿。两种方式殊道同归。
5. 点“属性”后进入编辑连接界面,连接名称可修改,以便更好地体现此连接的性质,并可添加说明帮助记忆。但这些都并非必须。而必须与关键的是:下面的sql命令文本!本例中合并3个工作簿,sql语句如下:
select * from [C:\Users\nxpsir\Desktop\SQL合并工作簿\工作簿1.xlsx].[Sheet1$] union all select * from [C:\Users\nxpsir\Desktop\SQL合并工作簿\工作簿2.xlsx].[Sheet1$] union all select * from [C:\Users\nxpsir\Desktop\SQL合并工作簿\工作簿3.xlsx].[Sheet1$]
共3个select,每个选择一个工作簿中的一个工作表,*表示所有字段,第1个方括号中是工作簿完整的绝对路径和工作簿名称,第2个方括号中是该工作簿中的工作表名称,后面加上一个状元符号。前2个select的后面有 “union all",表示连接所有数据。select语句要求极严,不能有半点差错,否则无法得到结果。
6. 确定后,即可得到合并的数据,如图,3个工作簿中的数据全部合并进来了。