VBA代码为控制按钮指定名称,而不是让excel生成从数字派生的按钮名称

VBA代码为控制按钮指定名称,而不是让excel生成从数字派生的按钮名称,vba,excel,Vba,Excel,这似乎是一个基本的问题,但我不知道如何做到这一点,我无法在互联网上找到答案。我有一个工作簿,我想为它生成一系列命令按钮。每个命令按钮都绑定到某个宏。我真的很想让按钮根据它们将要计算的内容来命名,而不是仅仅生成诸如“Button346”之类的名称。然而,我不知道怎样才能做到这一点。虽然这对我的代码来说并不重要,但它会让用户体验更友好,因此我觉得有必要问问是否有人知道该怎么做 这是我的代码示例。我想把按钮命名为“添加投资” 如果我能进一步澄清,请告诉我。我仍然是vba编码的业余爱好者,如果这是一个超

这似乎是一个基本的问题,但我不知道如何做到这一点,我无法在互联网上找到答案。我有一个工作簿,我想为它生成一系列命令按钮。每个命令按钮都绑定到某个宏。我真的很想让按钮根据它们将要计算的内容来命名,而不是仅仅生成诸如“Button346”之类的名称。然而,我不知道怎样才能做到这一点。虽然这对我的代码来说并不重要,但它会让用户体验更友好,因此我觉得有必要问问是否有人知道该怎么做

这是我的代码示例。我想把按钮命名为“添加投资”

如果我能进一步澄清,请告诉我。我仍然是vba编码的业余爱好者,如果这是一个超级基本的问题,我很抱歉

谢谢

约西亚考虑一下:

Sub ButtonNamer()
    ActiveSheet.Buttons.Add(2676.75, 90, 131.25, 14.25).Select
    Selection.Name = "Add Investment"
End Sub

注:

按钮的名称与其标题不同

请考虑:

Sub ButtonNamer()
    ActiveSheet.Buttons.Add(2676.75, 90, 131.25, 14.25).Select
    Selection.Name = "Add Investment"
End Sub

注:


按钮的名称与其标题

不同,因为您担心“用户体验更友好”,我猜您指的是按钮上显示的文本,它需要其
标题
属性:

ActiveSheet.Buttons.Add(2676.75, 90, 131.25, 14.25).Select
Selection.Caption = "Add Investments"
也可以缩短为:

ActiveSheet.Buttons.Add(2676.75, 90, 131.25, 14.25).Caption = "Add Investments"

由于您担心“用户体验更友好”,我猜您指的是按钮上显示的文本,它需要其
标题
属性:

ActiveSheet.Buttons.Add(2676.75, 90, 131.25, 14.25).Select
Selection.Caption = "Add Investments"
也可以缩短为:

ActiveSheet.Buttons.Add(2676.75, 90, 131.25, 14.25).Caption = "Add Investments"

如果你愿意,你可以更进一步。与往常一样,建议远离
选择
选择
,而是使用所创建按钮的引用对象

Sub AddButton()

Dim Btn As Object

Set Btn = ActiveSheet.Buttons.Add(2676.75, 90, 131.25, 14.25)

With Btn
    .Caption = "Add Investments"
    ' you can modify other properties as well
    .Font.Bold = True
End With

End Sub

如果你愿意,你可以更进一步。与往常一样,建议远离
选择
选择
,而是使用所创建按钮的引用对象

Sub AddButton()

Dim Btn As Object

Set Btn = ActiveSheet.Buttons.Add(2676.75, 90, 131.25, 14.25)

With Btn
    .Caption = "Add Investments"
    ' you can modify other properties as well
    .Font.Bold = True
End With

End Sub

勇敢的下层选民会愿意解释原因吗?因此,为了让我改进我的答案,让其他人从他的观点中学习,我不是下层选民,但会猜测这是因为这纯粹是一个没有解释文本的代码答案?不过这只是一个猜测。勇敢的下层选民会愿意解释原因吗?因此,为了让我改进我的答案,让其他人从他的观点中学习,我不是下层选民,但会猜测这是因为它纯粹是一个代码答案,没有解释性文本?不过只是猜测而已。