以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  打印时合并  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=67801)

--  作者:发财
--  发布时间:2015/5/3 15:34:00
--  打印时合并
用代码:一个EXCEL表中有两张16k的工作表如何在打印时合并打印到一张8k的纸上?
--  作者:大红袍
--  发布时间:2015/5/3 20:02:00
--  

把两个工作表的内容,剪切到一张新的表里面,然后打印新表。


--  作者:大红袍
--  发布时间:2015/5/3 20:14:00
--  

参考代码

 

Dim App As New MSExcel.Application

Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\\test.xls")
Dim Ws1 As MSExcel.WorkSheet = Wb.WorkSheets("sheet1") \'指定要复制的工作表
Dim Ws2 As MSExcel.WorkSheet = Wb.WorkSheets("sheet2")
Dim Ws3 As MSExcel.WorkSheet = Wb.WorkSheets("sheet3")

Ws1.UsedRange.Copy
ws3.Cells(1,1).Select
ws3.paste
Ws2.UsedRange.Copy
ws3.Cells(1,Ws1.UsedRange.Columns.Count).Select
ws3.paste

\'Wb.Save
app.Visible = True
\'App.Quit


--  作者:发财
--  发布时间:2015/5/4 16:04:00
--  
最难解决的是两表的行数不相同,如表1有35行,表2有50行,合并两表时35行和50行的高度要相同?
--  作者:Bin
--  发布时间:2015/5/4 16:05:00
--  
不同行数高度肯定不一样,你补充空行为50行再合并呗
--  作者:发财
--  发布时间:2015/5/4 16:13:00
--  
打印出来的效果就不一样了?
--  作者:大红袍01
--  发布时间:2015/5/4 16:17:00
--  
以下是引用发财在2015/5/4 16:13:00的发言:
打印出来的效果就不一样了?

 

不明白你到底想怎样,到底想做什么。

 

你分别打印,行数不同,高度肯定也是不同的啊。


--  作者:发财
--  发布时间:2015/5/4 16:22:00
--  
做报表时会习惯将两张A4的小报表合并打印在一张A3纸上,便于保存,平时是将两张A4纸并在一齐进行复印,明不明白?如果加入空行就显得高低不美观了。
--  作者:大红袍01
--  发布时间:2015/5/4 16:42:00
--  

那就做不到。

 

你可以这样:1、先打印第一个报表;2、用3楼代码,把第二个报表拷贝进去(左边留空格),再打印一次


--  作者:发财
--  发布时间:2015/5/4 16:47:00
--  
这样就不如,先设A3纸横向左面打印表1,再用这张A3表右面打印表2。