EXCEL VBA如何根据单元格里的内容长度调整单元格行高?

2024-11-08 14:08:48
推荐回答(2个)
回答1:

  1. 判断一个单元格内的字符串长度用Len函数,用法如下:

    s = Len(Range("A1").Text)

    这里的s就表示字符串有多少个字符组成的。

  2. 判断选中的单元格是由几个小格子组成的可以这样:

    比如:

  3. Sub yy()
        [h6:k8].Merge   '将h6:k8区域合并单元格
        [h6].Select     '选中H6:k8这个合并单元格
        MsgBox Selection.Count   '通过Selection.Count这个命令就可以得到选中的这个区域的单元格数目
    End Sub
  4. 让单元格自动调整行高,用AutoFit,自动适应方法,用法如下: 

  5. Sub xx()
        Range("A1:F6").Rows.AutoFit
    End Sub

回答2:

如何获取单元格内容的行数,再乘以某个值,

根据行数设定行高
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim a, b
Sheet1.UsedRange.Offset(1, 1).ClearContents
[a1].CurrentRegion.EntireRow.AutoFit
For i = 2 To [a65536].End(3).Row
Cells(i, 1).WrapText = True
a = Cells(i, 1).RowHeight
Cells(i, 1).WrapText = False
b = Cells(i, 1).RowHeight
Cells(i, 1).WrapText = True
Rows().RowHeight = Application.Ceiling(a / b, 1) * 10
Next
Application.ScreenUpdating = True
End Sub