如何在Excel里面实现折行打印
来源:百度文库 编辑:神马文学网 时间:2024/04/29 08:48:43
一个小问题:如果我有一个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
然后是丫头的答案,不用Excel,只需要用排序就搞定了。丫头真是聪明的不得了!步骤如下:
1、如果是折两行的话,构造一个包含1, 3, 5, … , 2n-1, 2, 4, 6, …, 2n 的列。 n和要拷贝的行数相同。
2、把要折行的两部分前后分别拷贝到这个构造的列的后面。
3、按照构造的列排序。
两分钟就搞定了!真是令人愉快啊。
—— 先想后看 ————————
我的答案,用一个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
然后是丫头的答案,不用Excel,只需要用排序就搞定了。丫头真是聪明的不得了!步骤如下:
1、如果是折两行的话,构造一个包含1, 3, 5, … , 2n-1, 2, 4, 6, …, 2n 的列。 n和要拷贝的行数相同。
2、把要折行的两部分前后分别拷贝到这个构造的列的后面。
3、按照构造的列排序。
两分钟就搞定了!真是令人愉快啊。
如何在Excel里面实现折行打印
在Excel中如何禁止打印功能
Excel实现批量打印工资条
如何打印Excel表格
在Excel中如何设置需要打印的区域?
Excel中如何打印不连续区域的方法
如何在Word里面生成目录
如何在Word里面自动生成目录
如何在Word里面生成目录..
如何在Word里面自动生成目录
在Excel中只打印区域内需要的数据
在Excel中只打印区域内需要的数据
在Word中实现文字的镜像翻转打印
如何在Ubuntu上使用网络打印
Excel的双面打印
用Excel打印成绩表
excel奇偶页打印
巧用Excel打印成绩
Excel制作打印工资条
如何实现VB与EXCEL的无缝连接
Excel表格如何实现隔行更换背景颜色
如何打印
如何在firefox浏览器里面得到选中的文本
巧用Excel打印成绩通知单