【问题标题】:How to select a text box and resize using VBA?如何使用 VBA 选择文本框并调整大小?
【发布时间】:2020-06-13 18:56:31
【问题描述】:

我正在尝试使用 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 中的值调整所选文本框的大小?

【问题讨论】:

  • 您说要增加“文本框”的大小,但是,您的代码显示您正在调整形状的大小。是哪个?
  • Set shp = Selection
  • @Ahmad,我不想增加文本框的大小,而是想调整大小,所以大小会增加或减少。
  • @TimWilliams,感谢您的回复。我不是专业编码员,但我会尽力与自己一起开发。但在这里我卡住了。你能帮我写这行吗?
  • 用我的线路替换你现有的线路。

标签: excel vba


【解决方案1】:

你可以这样做:

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

【讨论】:

  • 感谢蒂姆。它对我意义重大。它运行良好。
猜你喜欢
  • 1970-01-01
  • 2020-06-10
  • 1970-01-01
  • 2011-07-29
  • 1970-01-01
  • 2016-09-27
  • 1970-01-01
  • 1970-01-01
  • 2015-10-17
相关资源
最近更新 更多