宝宝健康成长网首页刘易桉宝宝健康成长 林林微博 育儿护理知识 宝宝网址导航
当前位置: 首页 >> 网络学习 >> Excel中如何实现折行打印

Excel中如何实现折行打印

可能很多人遇到过折行打印的问题,具体描述下,比如我有一个Excel表,列数非常的多,假设有二十列,以至于在一张纸上横着打不下,想折行打印,也就是把一行打成两行,或者更多行,应该怎么做?这里宝宝健康成长网说一下,本文不考虑纯手工操作哦!

上答案。第一种答案:用一个VBA来做一个复制。我对VBA不是很熟,尤其对于VBA复杂的对象体系感到头晕,因此花了一天半的时间来看文档,还翻了一本叫《Excel 2003高级VBA编程宝典》的书,才写出这么几句。VBA基本的语法其实不麻烦,麻烦还在于找到正确的对象和属性。现代语言似乎都是这样?应用层面上体系比算法重要。

Sub SheetToPrint()
Application.ScreenUpdating = False
' 停止屏幕刷新
For i = 1 To Worksheets("Sheet1").Range("a1", Range("a65535").End(xlUp)).Count
' 这个是从第一行到最后一行的遍历,VBA的这个写法是挺奇怪的。
Worksheets("Sheet1").Cells(i, 1).Copy Worksheets("Sheet2").Cells((i - 1) * 3 + 1, 1)
' 然后采用单元格对单元格的拷贝,以便于控制。虽然麻烦,其实复制一下就OK了。
' 省略单元格拷贝操作若干
Next i
Application.ScreenUpdating = True
End Sub

第二种答案,只需要用排序就搞定了。步骤如下:
1、如果是折两行的话,构造一个包含1, 3, 5, … , 2n-1, 2, 4, 6, …, 2n 的列。 n和要拷贝的行数相同。
2、把要折行的两部分前后分别拷贝到这个构造的列的后面。
3、按照构造的列排序。
两分钟就搞定了!

亲们!记得收藏本站

发表评论

^留言没头像?教你设置头像!
我的应用 Follow@cnbabyup 宝宝问答>  0-1岁  1-3岁  3-6岁 手气不错