我花了很多時間閱讀有關該主題的各種主題,但無法弄清楚我做錯了什么。我將此代碼(在插入一個空白矩形后)粘貼到一個新作業簿中,并且它起作用了。但是在我當前的作業簿中,tester子運行良好,但是當我doStuff從按鈕呼叫時,它會引發錯誤(在這個問題的標題中概述)。
我檢查了安全性,再次,新的作業簿,相同的代碼,完美運行。不可能是宏不存在,因為范圍很小,我可以看到兩個子。
Sub tester()
ActiveSheet.Shapes.Range(Array("Rectangle 1")).Select
Selection.OnAction = "doStuff"
End Sub
Sub doStuff()
MsgBox "hello"
End Sub
uj5u.com熱心網友回復:
如果您嘗試將宏系結到形狀,這里是您正在尋找的代碼:
Sub assign_macro_to_shape()
ActiveSheet.Shapes("Rectangle 1").OnAction = "doStuff"
End Sub
uj5u.com熱心網友回復:
您需要將“doDtuff”宏分配給矩形。右鍵單擊矩形并選擇“分配宏”,如此處所示。然后選擇“doStuff”宏。

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/449927.html
上一篇:VBA另存為檔案路徑
