设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2048|回复: 2
打印 上一主题 下一主题

[求助]如何计算一页中的行数?结果因行高不同±1?

[复制链接]
跳转到指定楼层
1#
发表于 2005-12-24 06:06:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Dim a(100) As Integer
    Dim m As Integer
    Dim p As Integer
    Dim q As Integer
    Dim 累计行高 As Double

    Dim 上边距 As Double
    Dim 下边距 As Double
    Dim 可打印长度 As Double





    可打印长度 = Application.CentimetersToPoints(19)

    累计行高 = 0
    m = 0

    For p = 1 To 199


        累计行高 = 累计行高 + Rows(p).Height


        If 累计行高 > 可打印长度 Then

            p = p - 1
            m = m + 1
            a(m) = p
            累计行高 = 0
         
        End If


    Next p

结果因行高不同±1?

单位转换的误差应该没那么大的啊!

还有没有其它的方法
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2005-12-25 06:39:00 | 只看该作者
我也觉得这个问题比较烦

之前发过一个贴子就没有人复;

其实我以为分页问题还不少:

1\要清楚excel本身是如何分页的,它设定的行高是多少?

2\要固定了表头打印时是如何计算?页边距改变后如何计算?

3\一页宽的设定后,相关的一页行总高又是如何,这些没有清楚是不能用VBA找出页面的定的吧?

我也想有高手来看看如何办呢!
3#
 楼主| 发表于 2005-12-25 06:41:00 | 只看该作者
楼主要做什么?
如果想知道某一页的行数,可以试试:
activesheet.HPageBreaks(i).Location.Row--第i个水平分页符所在的行号
以上只是一种思路。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-6-1 10:53 , Processed in 0.076118 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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