首页 > 解决方案 > 如何使用 VBA 选择文本框并调整大小?

问题描述

我正在尝试使用 VBA 调整文本框的大小。为此,我每次都更改 VBA 中的矩形编号,这不符合 VBA 的目的。

我需要根据其他单元格中的值调整选定文本框的大小。

Sub ResizeTextBox()
    Dim shp As Shape
    Set shp = ActiveSheet.Shapes("Rectangle 39")
    shp.Height = Application.CentimetersToPoints(Range("Y5").Value)
    shp.Width = Application.CentimetersToPoints(Range("Y6").Value)
End Sub

如何根据单元格中的值调整所选文本框的大小Y5Y6

标签: excelvba

解决方案


你可以这样做:

Sub ResizeTextBox()
    Dim shp As Shape

    'check a range is not selected
    If TypeName(Selection) <> "Range" Then
        With Selection
            .Height = Application.CentimetersToPoints(Range("Y5").Value)
            .Width = Application.CentimetersToPoints(Range("Y6").Value)
        End With
    Else
        MsgBox "First select a a shape for resizing"
    End If
End Sub

推荐阅读