20180428 xlVBA自动设置成绩条行高

‘自动设置行高  传入工作表Sht 和 每页打印的行数RowsInOnePage
Public Sub AutoSetRowHeight(ByVal Sht As Worksheet, Optional RowsInOnePage As Variant)
    Dim BreakRow As Range ‘水平分页符位置
    Dim SumHeight As Double ‘累计首页行高
    Dim AverageHeight As Double
    Dim i As Long ‘行号
    With Sht
        ‘获取第一页与第二页分页符所在的单元格
        Set BreakRow = Sht.HPageBreaks(1).Location
        Debug.Print "首页分页符所在的行号:"; BreakRow.Row
        ‘累计第一页所有行的高度
        i = 1
        Do While i < BreakRow.Row
            SumHeight = SumHeight + .Rows(i).RowHeight
            i = i + 1
        Loop
        ‘获取第一页最后一个成绩单末尾的空白行行号
        If IsMissing(RowsInOnePage) Then
            RowsInOnePage = BreakRow.Row
            Do While .Cells(RowsInOnePage, 2).Value <> ""
                RowsInOnePage = RowsInOnePage - 1
            Loop
            Debug.Print "首页最后一个成绩单截止行号:"; RowsInOnePage
        End If
        ‘计算平均行高
        If RowsInOnePage <> 0 Then
            AverageHeight = SumHeight / RowsInOnePage
        Else
            MsgBox "除零错误"
            Exit Sub
        End If
        ‘设置已用区域的行高
        .UsedRange.Rows.RowHeight = AverageHeight
    End With
    ‘释放
    Set Sht = Nothing
    Set BreakRow = Nothing
End Sub

  

原文地址:https://www.cnblogs.com/nextseven/p/8969570.html

时间: 2024-11-05 22:01:19

20180428 xlVBA自动设置成绩条行高的相关文章

1. DataGridView设置字体、行高、列宽、单列居中

DataGridView表格内容的列宽.行高.字体的设置,设置某一列居中.一般地,会将行高设为统一的,列宽根据不同情况设定. [csharp] view plaincopyprint? // 调整字体 dataGridView1.Font = new Font("宋体", 11); // 调整行高 //dataGridView1.Rows[0].Height = 100; dataGridView1.RowTemplate.Height = 30; dataGridView1.Upda

Java 设置Excel自适应行高、列宽

在excel中,可通过设置自适应行高或列宽自动排版,是一种比较常用的快速调整表格整体布局的方法.设置自适应时,可考虑2种情况: 1.固定数据,设置行高.列宽自适应数据(常见的设置自适应方法) 2.固定列宽,缩小数据字体大小适应列宽 本文将通过java程序来介绍具体的自适应设置方法.   工具:Free Spire.XLS for Java (免费版) 注:可通过官网下载包,并解压将lib文件夹下的jar文件导入java程序:或者通过maven仓库下载并导入. 参考如下导入效果: Java 代码示

fastreport 如何 设置 richview 的 行高

richview中的行高改变有点特别.必须在AfterData 事件执行的时候才能修改: 也就是说,如果简单的放一个按钮,去发送消息给richView->RichEdit ,然后调用frxReport1->ShowReport 是没有用的 正确的做法如下 在C++ BUILDER 中增加一个函数SetLineSpace,用来修改RichView的行高 在Form的Create事件中,调用frxReport->AddFunction 方法注册一个函数SetLineSpace 在Form的C

POI精确设置Excel的行高和列宽

EXCEL的行高度和列宽度单位是不一样的. 1,EXCEL列高度的单位是磅,Apache POI的行高度单位是缇(twip): 1英寸=72磅=25.4毫米=1440缇1磅=0.353毫米=20缇 POI中的行高=Excel的行高度*20 Excel的行高度=POI中的行高/20 这里顺便把像素的换行方法说一下: DPI = 1英寸内可显示的像素点个数.通常电脑屏幕是96DPI, IPhone4s的屏幕是326DPI, 普通激光黑白打印机是400DPI 要计算POI行高或者Excel的行高,就先

Android - TextView 设置行间距、行高

在你要设置的TextView中加入如下代码: 1.android:lineSpacingExtra 设置行间距,如”8dp”. 2.android:lineSpacingMultiplier 设置行间距的倍数,如”1.5″.

行内元素(inline标签)设置了行高为什么不生效,还是表现为父盒子的行高?行内元素行高问题终极解释

最近在看张鑫旭大佬的<css世界>,读到5.2.4  内联元素 line-height 的“大值特性” ,产生了疑惑, 在开发中确实也遇到了同样的问题,深入探究后得出结果,先说结论吧,论证内容有点长,结论: 行内元素自身并没有行高这个属性,虽然设置可以设置行高,但是最终作用的地方并不是自身,而是其自身所在的行框盒子上!如果你不知道什么是行框盒子,建议你好好读读张大佬的<css世界>,这里我简单的画一画 如上如所示,我的结论是: 内联盒子没有行高这一属性,给它设置line-heigh

20191012——POI设置单元格自动行高(思路)

在经过Jxls或者POI导出数据至excel中后,发现有的单元格内容太多,既没有自动换行,也没有自动增大行高.那如何通过Java代码来实现呢?请看下面步骤: (一)首先,将excel设置为最合适的行高,通过CTRow对象的setCustomHeight(false)函数实现,具体的代码如下: XSSFWorkbook workbook = new XSSFWorkbook(文件路径或者文件流); XSSFSheet sheet = workbook.getSheet(sheetIndex); X

Swift设置自动行高

1 // 设置行高自适应 2 tableView.rowHeight = UITableViewAutomaticDimension 3 4 // 设置预估行高 5 tableView.estimatedRowHeight = 200 1 // 底部的toolBar 2 toolBar.snp_makeConstraints { (make) in 3 make.top.equalTo(originalView.snp_bottom) 4 make.leading.trailing.equalT

datagridview 行高列宽的自动设置

1) 设定行高和列宽自动调整 [C#]// 设定包括Header和所有单元格的列宽自动调整 DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; // 设定包括Header和所有单元格的行高自动调整 DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells; AutoSizeColumnsMode 属性的设定值枚