如何将EXCEL中二个工作表的内容引用并合并到一个工作表中?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将EXCEL中二个工作表的内容引用并合并到一个工作表中?相关的知识,希望对你有一定的参考价值。

例:表一中数据如下
A B C D E
名称 单价 入库数 出库数 结余
网线 120 10 6
打印纸 80 15 5
圆珠笔 14 28 12
表二中数据如下:
A B C D E
名称 单价 入库数 出库数 结余
网线 4 6
打印纸 10 5
圆珠笔 16 12

要求表三的数据显示如下:

A B C D E
名称 单价 入库数 出库数 结余
网线 120 10 4 6
打印纸 80 15 10 5
圆珠笔 14 28 16 12
请问如何实现。
不是要数据相加,本来排列好了,传到上面就有问题了,主要是想什么呢?就是表一和表二的结构是一样的,
表一中有的数据,表二中是没有的,相反表二有的数据表一中是没有的,现在就是想把表一和表二,合并到一起。
简单点说如上面的图,就是把表二中出库数的数据,引用到表一里面去(但要在一个新的表中),结余中的数据是一样的,可以不用动的。

意思是这样的:
一个项目比如:网线。
在这个表中一行有:名称、单价、入库数都填了,出库和结余为空的
另一行中: 名称 出库数 结余 填了(单价和入库为空的)
现在就是想要将一行中填写了的数据引到另一行中的空的里面,
能在另一个表里显示为最好,如果不行只好在源表中显示,
要能批量处理

原始数据所在工作簿包含多个格式相同的工作表,只不过每个工作表内容不同,比如说不同人名的工作表数据或者不同部门填写的数据。<br><br>在原始数据同目录下新建一个工作簿,建立两个工作表,名称分别为“首页”和“合并汇总表”。<br><br>按alt+f11进入vba代码编辑和调试界面。<br><br>根据下图提示,插入一个模块。<br><br>将下述代码粘贴到模块空白处:<br>sub combinesheetscells()<br><br> dim wsnewworksheet as worksheet<br> dim cel as range<br> dim datasource, rowtitle, columntitle, sourcedatarows, sourcedatacolumns as variant<br> dim titlerow, titlecolumn as range<br> dim num as integer<br> dim datarows as long<br> datarows = 1<br> dim titlearr()<br> dim choice<br> dim myname$, myfilename$, activesheetname$, addressall$, addressrow$, addresscolumn$, filedir$, datasheet$, mydelimiter$<br> dim n, i<br> n = 1<br> i = 1<br> application.displayalerts = false<br> worksheets("合并汇总表").delete<br> set wsnewworksheet = worksheets.add(, after:=worksheets(worksheets.count))<br> wsnewworksheet.name = "合并汇总表"<br><br>myfilename = application.getopenfilename("excel工作薄 (*.xls*),*.xls*")<br><br> if myfilename = "false" then<br> msgbox "没有选择文件!请重新选择一个被合并文件!", vbinformation, "取消"<br><br> else<br><br> workbooks.open filename:=myfilename<br><br> num = activeworkbook.sheets.count<br> myname = activeworkbook.name<br> set datasource = application.inputbox(prompt:="请选择要合并的数据区域:", type:=8)<br> addressall = datasource.address<br> activeworkbook.activesheet.range(addressall).select<br><br> sourcedatarows = selection.rows.count<br> sourcedatacolumns = selection.columns.count<br> application.screenupdating = false<br> application.enableevents = false<br><br> for i = 1 to num<br> activeworkbook.sheets(i).activate<br> activeworkbook.sheets(i).range(addressall).select<br> selection.copy<br><br> activesheetname = activeworkbook.activesheet.name<br> workbooks(thisworkbook.name).activate<br> activeworkbook.sheets("合并汇总表").select<br><br> activeworkbook.sheets("合并汇总表").range("a" & datarows).value = activesheetname<br> activeworkbook.sheets("合并汇总表").range(cells(datarows, 2), cells(datarows, 2)).select<br><br> selection.pastespecial paste:=xlpastecolumnwidths, operation:=xlnone, _<br> skipblanks:=false, transpose:=false<br><br> selection.pastespecial paste:=xlpasteall, operation:=xlnone, skipblanks:= _<br> false, transpose:=false<br><br> selection.pastespecial paste:=xlpastevalues, operation:=xlnone, skipblanks _<br> :=false, transpose:=false<br><br>datarows = datarows + sourcedatarows<br><br> workbooks(myname).activate<br><br> next i<br><br>application.screenupdating = true<br><br> application.enableevents = true<br><br> end if<br><br> workbooks(myname).close<br>end sub<br><br>在“首页”工作表中按下图示范插入一个窗体控件并指定宏为插入的代码名称。<br><br>点击“首页”工作表中插入的按钮,根据提示,浏览到原始数据工作簿。<br><br>下一步,用鼠标选择要合并的数据范围。<br>注意:每个工作表数据可能不一样,比如说有的是10行数据,有的是30行数据。在这里我们可以用鼠标选择任意工作表的一个较大范围,比如说a1:d100,保证比最多行数的工作表数据还多就可以,一会再删除空行。<br><br>点击确定按钮,待代码运行完毕后,所有的数据就都合并到了“合并汇总表”中。<br>注意:<br>1)a列的文本说明右侧的数据来自于原始数据表的哪个工作表;<br>2)数据之间会有一些空行,下面通过筛选删除。<br><br>选中全部数据区域,执行自动筛选。然后选择其中一个字段,选择“空白”和标题内容。<br><br>然后将筛选出来的无用行鼠标右键删除,再删除a列整列即可,完成效果如下图: 参考技术A 你这个表只要把你的第二表的出库填入第一表中就可以了,即出库加一列,出库成了两列,重新计算一下即可 参考技术B 你的意思是不是“表3是表1和表2的并集”? 参考技术C +365728155给你公式本回答被提问者采纳 参考技术D 你是要将里面的数据相加吗?

如何将EXCEl中多张Sheet工作表转换成一个PDF

选择 另存为 PDF 再点更多选项中,选择 整个工作表。然后就会把全部sheet表按顺序保存在一个PDF中,注意需要事先调整好表格的格式。 参考技术A 同时选择多个Sheet后再转换,或者转换后用Acrobat 合并多个PDF为一个PDF,殊道同归。 参考技术B 输入相关人员的数据,把SHEET起好相关的名字。单击“数据”选项卡。

单击“数据工具”组内的合并计算按钮。

合并计算的对话框打开了。

函数“求和”作为默认的选项。

输入相关的引用位置。

按相关的“添加”按钮,使引用的工作表列在清单中。

通过各工作表内的合并,就可以统计出各表内的内容了。这样就可以一目了然了。

以上是关于如何将EXCEL中二个工作表的内容引用并合并到一个工作表中?的主要内容,如果未能解决你的问题,请参考以下文章

如何快速搜索出excel工作表中哪些单元格链接到其他数据源?

EXCEL单元格批量插入不同批注

excel多个表格合并成一个工作表的方法

怎么把多个excel工作簿里面的相同名字的工作表的内容合并到一起

在excel中如何将第一个工作表中的数据求和汇总到另一个表中

如何将多个excel表格内容合到一起