文本框的下划线属性不像其他文件一样工作

Dav*_*d G 0 excel vba excel-vba

我只是想使用VBA在工作表文本框中为某个特定字符添加下划线.它应该非常简单,我可以毫无问题地使用Bold和Italic.

我有以下子

Sub ew()
    Dim txt1 As Shape
    Set txt1 = Sheet1.Shapes("txt_1")
    txt1.TextFrame.Characters.Text = "Bold and Underline this"

    txt1.TextFrame.Characters.Font.Bold = True
    txt1.TextFrame.Characters.Font.Italic = True
    txt1.TextFrame.Characters.Font.Underline = True
End Sub
Run Code Online (Sandbox Code Playgroud)

代码在最后一行失败,这非常奇怪,因为它适用于前两行.错误(1004)表示"无法定义Font属性的下划线功能".

要重新创建问题,请将我的子文件转换为新的Excel文档并创建名为"txt_1"的文本框,这就是运行它所需的全部内容.

如果有人知道它失败的原因,请帮忙!

小智 5

您需要定义下划线样式.走你的最后一行 txt1.TextFrame.Characters.Font.Underline = xlUnderlineStyleSingle