Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 4779|回复: 2

[已解决]用vba 设定每页打印的指定行数 能否做到

[复制链接]
发表于 2012-11-21 16:06 | 显示全部楼层 |阅读模式
用vba 设定每页打印的指定行数 能否做到
例如:我想用A4的纸张,页边距 :上下左右 都是 1cm;共打印的区域为 "A1:R" & .[C65536].End(3).Row,
计划每页只打印 48行,(不打印标题)。
请问各位老师能否做到
请赐教代码?
非常感谢
最佳答案
2012-11-21 20:46
Sub a()
    Dim r, c, n, i, x, rng

    '页面设置
    With Worksheets("Sheet1").PageSetup
        .Orientation = xlLandscape    '横向模式。
        '      .Orientation = xlPortrait '纵向模式。
        .LeftMargin = Application.InchesToPoints(1)
        .RightMargin = Application.InchesToPoints(1)
        .TopMargin = Application.InchesToPoints(1)
        .BottomMargin = Application.InchesToPoints(1)
    End With

    '打印区范围从A1起的r行c列
    c = 18: r = 48
    x = Range("a65536").End(xlUp).Row
    n = Int(x / r) + 1
    Set rng = Range("A1")
   
    '打印
    For i = 1 To n
        Set rng = rng.Resize(r, c)
        rng.PrintOut
        Set rng = rng.Offset(r, 0)
    Next i
End Sub
发表于 2012-11-21 20:46 | 显示全部楼层    本楼为最佳答案   
Sub a()
    Dim r, c, n, i, x, rng

    '页面设置
    With Worksheets("Sheet1").PageSetup
        .Orientation = xlLandscape    '横向模式。
        '      .Orientation = xlPortrait '纵向模式。
        .LeftMargin = Application.InchesToPoints(1)
        .RightMargin = Application.InchesToPoints(1)
        .TopMargin = Application.InchesToPoints(1)
        .BottomMargin = Application.InchesToPoints(1)
    End With

    '打印区范围从A1起的r行c列
    c = 18: r = 48
    x = Range("a65536").End(xlUp).Row
    n = Int(x / r) + 1
    Set rng = Range("A1")
   
    '打印
    For i = 1 To n
        Set rng = rng.Resize(r, c)
        rng.PrintOut
        Set rng = rng.Offset(r, 0)
    Next i
End Sub
回复

使用道具 举报

 楼主| 发表于 2012-11-22 07:13 | 显示全部楼层
爱疯 发表于 2012-11-21 20:46
Sub a()
    Dim r, c, n, i, x, rng

非常感谢版主
帮我解决了一个大难题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-23 17:51 , Processed in 0.266243 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表