2014-02-05 60 views

回答

8

好了,用鼠标右键单击的电子表格,并选择视图代码底部Sheet1选项卡

复制粘贴以下代码

Private Sub Worksheet_Activate() 
    Buttons("Button 1").Caption = "NEW TEXT" 
End Sub 

此事件触发了当工作表Sheet1被激活,它改变了标题按钮到NEW TEXT

很明显,您可以通过名称或索引来引用您的按钮。如果要修改不同对象上的文本,您将修改"Button 1"

你可以给它分配一个表达式的变量或评估如果更换"NEW TEXT"

例如

如果Sheet2您在A1单元格中键入任何你可以修改代码后面工作表Sheet1并使用

Private Sub Worksheet_Activate() 
    Buttons("Button 1").Caption = Sheets("Sheet2").Range("A1") 
End Sub 

这样每次启动时工作表Sheet1上的按钮将文本从工作表Sheet1回升,单元格A1

要找出按钮的名称看这里

enter image description here

+0

我在Sheet2上多个按钮。我怎么知道哪一个是Button 1?我找不到按钮的属性。 – Josh

+1

@Josh我已经为你更新了答案 – 2014-02-05 13:40:08

+0

太棒了!那样做了。甚至没有意识到它藏在那里。以为我会不得不将所有这些改为ActiveX按钮。谢谢一堆! – Josh

2

在名为“按钮1”形式控制按钮的这个例子标题是根据“工作表Sheet1”改变细胞的价值变化。该按钮位于Sheet1上,代码来自Sheet1的Class-Module。 HTH

' Sheet1 module: 

Private Sub Worksheet_Change(ByVal Target As Range) 
    Const buttonName As String = "Button 1" 

    Dim targetButton As Excel.Button 

    On Error Resume Next 
    Set targetButton = Target.Worksheet.Buttons(buttonName) 
    On Error GoTo 0 

    If targetButton Is Nothing Then _ 
     Exit Sub 

    If Target.Value <> "" Then _ 
     targetButton.Caption = Target.Value 

End Sub 

enter image description here

0

试试这个:

ActiveSheet.Shapes("Button 1").Select 
Selection.Characters.Text = "My New Caption" 
1

我需要TextFrame.Characters.Text去的字幕

Worksheets("Sheet1").Shapes("button 1").TextFrame.Characters.Text = "Click" 
相关问题