gpt4 book ai didi

VBA Excel 2010 - 如何将宏分配给使用宏创建的命令按钮

转载 作者:行者123 更新时间:2023-12-04 21:23:02 31 4
gpt4 key购买 nike

我有一个创建命令按钮的宏但是我无法将任何宏分配给 VBA 中的按钮

看过this链接,但它用于用户表单(但我还不够好,无法更改它以适应我的需要)

我目前正在尝试的代码如下,我猜我需要在 With 中添加一些内容声明,但我不知道会是什么

Dim MyR As Range, MyB As OLEObject
Dim MyR_T As Long, MyR_L As Long


Set MyR = Range("I3") 'just an example - you get that from your own script
MyR_T = MyR.Top 'capture positions
MyR_L = MyR.Left '...
'create button
Set MyB = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
Link:=False, DisplayAsIcon:=False)

'set main button properties
With MyB
.Name = "MyPrecodedButton" 'important - code must exist ... see below
.Object.Caption = "Load UseForm"
.Top = MyR_T
.Left = MyR_L
.Width = 130
.Height = 30
.Placement = xlMoveAndSize
.PrintObject = True 'or false as per your taste
End With

最佳答案

因此,从您发布的您自己的链接中,您的代码将如下所示:

Set UF = ActiveWorkbook.VBProject.VBComponents("Name_of_the_userform")

With UF.CodeModule
.InsertLines 2, _
"Private Sub " & MyB.Name & "_Click()" & Chr(13) & _
"****HERE COMES YOUR FUNCTION CALL FOR THE BUTTON****" & Chr(13) & _
"End Sub"
End With

但这仅适用于 activeX 按钮。它所做的是相当黑客......所以如果你有更好的解决方案,我不会推荐这个。它的作用是:每个 ActiveX 按钮都有一个 onclick 函数,其语法如下:“ButtonName_Click()” 如果您在代码中的某处放置此行,它将在单击时执行。现在代码做了什么(如您发布的链接中),是将这些函数写入用户表单代码。

关于VBA Excel 2010 - 如何将宏分配给使用宏创建的命令按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36621960/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com