我正在尝试使用以下宏将vba代码分配给形状。
使用代码时,出现运行时错误438“对象不支持此属性或方法”
我的工作表编号始终在变化,因此我无法将其硬编码为以下代码。
这是我正在使用的代码:
Sub assignCodeToShape()
Dim x As Integer
x = getSheetNumber
ActiveSheet.Shapes("fileShape").OnAction = Sheets(x) & ".CommandButton1_Click"
End Sub
Function getSheetNumber as Integer()
getSheetNumber =ActiveSheet.Index
End Function
答案 0 :(得分:4)
您可以这样做:
With ActiveSheet
.Shapes("fileShape").OnAction = .CodeName & ".CommandButton1_Click"
End With