我尝试使用以下代码在电子表格上创建一个按钮
Dim btnSaver As Object
Set btnSaver = Workbooks(1).Worksheets("Results").OLEObjects.Add(ClassType:="Forms.CommandButton.1")
我也试过
Set btnSaver = Workbooks(1).Worksheets("Results").OLEObjects.Add("Forms.CommandButton.1")
我首先得到消息,此时无法进入中断模式,我按下继续并获取错误应用程序定义或对象定义错误 - 当我从excel运行它时(当我再次使用调试器运行它时,它说下标出来的范围内)。
我已经检查了另一个电子表格中的代码并且它有效(它说不能以编程方式更改vb项目或者像这样但仍然创建了按钮)。
答案 0 :(得分:0)
只有当您在编辑器中单步执行代码时,才会收到“此时无法进入中断模式”提示。它不是一个错误,只是告诉你不能手动停止该行的代码。
其他错误来自于语法错误。你只有几行代码,所以我不确定什么是错的。您可以尝试这样的事情:
Sub Test()
Dim obj As OLEObject
Dim wk As Workbook
Dim ws As Worksheet
Set wk = Application.ActiveWorkbook
Set ws = wk.ActiveSheet
'if manually stepping through this line, it will show
'"Can't Enter Break Mode at this Time" | Click Continue
Set obj = ws.OLEObjects.Add(ClassType:="Forms.CommandButton.1")
obj.Left = 48
obj.Top = 24
obj.Width = 72
obj.Name = "btn1"
obj.Object.Caption = "Test Button"
End Sub