Excel单元格的ShrinkToFit属性:检测字体缩小时的大小?

时间:2014-10-24 20:04:00

标签: excel vba excel-vba excel-2007

如果Excel工作表单元格的ShrinkToFit属性设置为True,则Excel会根据需要缩小字体大小以适合所有文本。

是否可以在VBA中检测此类单元格的字体大小是否已缩小?很容易看到它发生在我的眼睛,但我需要用VBA检测它。

请注意我不是在询问如何检查ShrinkToFit属性是否已设置为True。没有什么比这更容易了。我问如何检查单元格的字体大小是否实际缩小,只有在需要适合所有文本时才会发生。

2 个答案:

答案 0 :(得分:1)

我没有找到解决方案,并决定走另一个方向。然而,从那以后我就有了这个想法,我没有测试过:

制作隐藏的工作表或工作簿,然后将单元格复制到其中的单元格。复制列宽也是如此。在该工作表上将“收缩”设置为“关闭”。检查列宽。现在对该列进行自动调整。现在再次检查列宽。自动调整是否扩大了列(再次关闭ShrinkToFit)?如果是这样,那么我认为这是一个安全的赌注,它在原来缩小了。

答案 1 :(得分:0)

这是检查ShrinkToFit的示例,在此示例中考虑了Sheet1中的单元格A1:

Sub test()

    Dim rngRange As Range

    'Assign Range
    Set rngRange = Sheet1.Range("A1")
    'Set shrinkto fit as true
    rngRange.ShrinkToFit = True
    'Check whether cell is Shrink to fit or not
    If rngRange.ShrinkToFit Then
        'Set Shrinktofit as false or do something
        rngRange.ShrinkToFit = False
    End If

End Sub