我的 excel 表中有一个下拉框。在某些时候,vba 为下拉列表分配了一个事件代码,我将其删除。
现在我不能使用这个下拉菜单,因为每次更改值都会抱怨无法执行已删除的代码。
如果我想查看它的代码 assigen 会抛出错误“无效引用”。
如何删除此事件代码?
编辑如果我添加请求的功能,整个错误就会消失
Public Sub Dropdown4_BeiÄnderung()
' must exist
End Sub
但实际上我希望能够删除它。
如果你知道name
这个组合框的形状,你可以在 VBA 中这样做:
Sub Dropdown4NoMacro()
Dim shpName as String
shpName = "Drop Down 4" '## Modify as needed.'
ActiveSheet.Shapes(shpName).OnAction = vbNullString
End Sub
不使用 VBA 进行编辑:
您应该能够右键单击控件,然后选择Assign Macro
,您将在其中看到它Dropdown4_BeiÄnderung
(或ThisWorkbookName!Dropdown4_BeiÄnderung
)。
只需删除该字段使其为空,然后按OK
。看截图,在按下之前突出显示的字段应该是空的OK
。
原始答案(假设这与Worksheet_change
事件有关。
尝试按 ALt+F11 以调出 Visual Basic 编辑器。在左侧,您应该看到一个Objects
包含工作簿和几个工作表的列表。右键单击相应的工作表以查看该工作表中的代码。
然后,删除与该Worksheet_Change
事件关联的所有代码——或者,在此处发布代码,以便我们告诉您是否有您可能想要保留的任何部分,同时仅删除影响下拉控件的部分。