【问题标题】:VBA - How to change the button textVBA - 如何更改按钮文本
【发布时间】:2017-06-19 09:44:08
【问题描述】:

我为命令按钮分配了一个 Excel VBA 宏,我需要知道如何在执行宏时将文本更新为“正在加载”。

我已经测试了以下代码,但没有成功:

Worksheets("Sheet1").Button9.Caption = "Loading"

【问题讨论】:

  • 什么不起作用?错误信息是什么?
  • 检查按钮名称和工作表名称

标签: excel vba button


【解决方案1】:

通过Buttons 收藏:

Worksheets("Sheet1").Buttons("Button9").Text = "Loading"

【讨论】:

  • 我使用了.Caption = "Loading..." 而不是.Text = "Loading",它成功了
【解决方案2】:

您应该尝试使用 Active X 按钮并将此代码添加到该活动 X 按钮单击事件中。此外,将此代码放在此活动 X 按钮所在的同一个工作表中。:

我假设您的按钮开始文本是“原始文本”。您可以在代码中将其替换为您自己的文本。另外,我添加 5 秒延迟只是为了模仿正在加载的东西。您可以用您的代码替换该部分。另请注意,在我的情况下,活动的 X 按钮名称是 CommandButton21,在您的情况下可能会有所不同。相应地更新您的代码。

Private Sub CommandButton21_Click()
CommandButton21.Caption = "Loading"
Application.Wait (Now + TimeValue("0:00:05"))
CommandButton21.Caption = "Original Text"
End Sub

【讨论】:

    【解决方案3】:

    这对我有用

    Worksheets("Sheet1").Button9.TextFrame.Characters.Text = "正在加载"

    【讨论】:

      【解决方案4】:

      如果是 Active X 按钮:

      Dim ws As Worksheets
      Set ws = Worksheets("Sheet1")
      
      Worksheets(ws.Name).addbutton.Caption = "Ajouter"
      

      addbutton 是按钮名称。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-07-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多