You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用If-Then语句设置Excel行高为12.6的倍数?

实现Excel行高自动调整后取12.6的整数倍

要实现你要的效果,用VBA完全可以搞定,之前代码没生效大概率是逻辑没写对。核心思路是先让Excel自动算出合适的行高,再把这个行高向上取整到12.6的整数倍,最后设置行高。

直接用这段VBA代码:

Sub SetRowHeightToMultipleOf12Point6()
    Dim targetRange As Range
    Dim currentRow As Range
    Dim autoHeight As Double
    Dim multiple As Integer
    
    ' 这里默认处理你选中的单元格/行,也可以改成固定范围比如ActiveSheet.UsedRange
    Set targetRange = Application.Selection
    
    ' 先让Excel自动调整行高
    targetRange.EntireRow.AutoFit
    
    ' 遍历每一行处理
    For Each currentRow In targetRange.EntireRow
        autoHeight = currentRow.RowHeight
        ' 用Ceiling函数向上取整,确保行高足够装下内容
        multiple = WorksheetFunction.Ceiling(autoHeight / 12.6, 1)
        ' 设置成12.6的整数倍
        currentRow.RowHeight = multiple * 12.6
    Next currentRow
End Sub

使用步骤:

  1. 打开Excel,按Alt+F11打开VBA编辑器
  2. 点击菜单栏的「插入」→「模块」,新建一个代码模块
  3. 把上面的代码粘贴进去,关闭编辑器
  4. 在Excel里选中需要调整行高的行或者单元格范围
  5. 按Alt+F8,选中SetRowHeightToMultipleOf12Point6,点击「执行」就行

注意事项:

  • 确保目标单元格已经开启了「自动换行」(右键单元格→设置单元格格式→对齐→勾选自动换行),不然AutoFit不会生效
  • 如果需要调整基准值(比如换成其他倍数),直接修改代码里的12.6就行
  • 建议先备份数据再执行,避免意外覆盖原有格式

内容的提问来源于stack exchange,提问作者Aaron Gofreed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 12:15:32