Office中国论坛/Access中国论坛

标题: [求助]如何计算一页中的行数?结果因行高不同±1? [打印本页]

作者: okmijn    时间: 2005-12-24 06:06
标题: [求助]如何计算一页中的行数?结果因行高不同±1?
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?

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

还有没有其它的方法
作者: okmijn    时间: 2005-12-25 06:39
我也觉得这个问题比较烦

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

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

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

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

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

我也想有高手来看看如何办呢!
作者: okmijn    时间: 2005-12-25 06:41
楼主要做什么?
如果想知道某一页的行数,可以试试:
activesheet.HPageBreaks(i).Location.Row--第i个水平分页符所在的行号
以上只是一种思路。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3