首页 > 解决方案 > 使用 VBA 的形状标签的透明背景

问题描述

我正在尝试使用 vba 创建形状。形状有标签,但我希望标签框有透明背景。尝试了下面的代码,但我得到 object required 错误。

Sub obj()
   ActiveSheet.Shapes.AddLabel(msoTextOrientationHorizontal, c, r, l1 / 4, h1 / 4).TextFrame.Characters.Text = l1 & "->"

     With TextFrame.TextRange.Font.Fill
         .Transparency = 0.9
     End With
End Sub

标签: excelvba

解决方案


您必须指定要格式化的形状。首先添加形状并指定它的名称:

ActiveSheet.Shapes.AddLabel(msoTextOrientationHorizontal,  c, r, l1 / 4, h1 / 4).Name = "ExampleName"

然后你可以随意格式化它:

ActiveSheet.Shapes("ExampleName").TextFrame.Characters.Text = l1 & "->"
ActiveSheet.Shapes("ExampleName").Fill.Transparency = 0.9

推荐阅读