我的代码会自动调整单元格的高度,以便文本适合该单元格 但是现在我想更改单元格内部文本的字体大小,以便字体缩小并增长以使文本适合单元格内部,因此我不必将单元格宽度设置为固定大小。
如何在VBA中执行此操作?
我需要知道文字的宽度,给定字体大小
选项1。
TextWidth = WidthOfAText(Range("A1").Value)
FontAdjustmentFactor = Range("A1").EntireColumn.ColumnWidth / TextWidth
FontSize = Range("A1").Font.Size * FontAdjustmentFactor
Range("A1").Font.Size = Max(4, Min(10, FontSize))
或者我需要知道文本是否会修复并执行某种试验和错误例程。
选项2。
Range("A1").Font.Size = 10
While (Text_does_not_fit AND Range("A1").Font.Size >= 5)
Range("A1").Font.Size = Range("A1").Font.Size - 1
Wend
我该怎么做? (最好使用选项1中的代码)
答案 0 :(得分:4)
非编程只需右键单击单元格 - >格式化单元格 - >对齐 - >收缩适合
代码明智是:
Sheet1.Range("A1").ShrinkToFit = True