如何获得在Excel中完全执行宏的按钮?

时间:2018-08-16 16:06:27

标签: excel vba excel-vba button

当我不使用按钮执行以下宏时,形状将被漂亮地删除。当我使用按钮执行宏时,将选择形状,但不会删除它们。我不明白为什么。代码有问题吗?预先感谢您的帮助!

Sub DeleteAllObjects()
    Dim ws As Worksheet
    Set ws = Worksheets("Flowchart")

    ws.Shapes.SelectAll
    Selection.Delete
 End Sub

1 个答案:

答案 0 :(得分:1)

我使用了一种迭代方法,因为我发现如果git commit --amend在运行时(以及avoid the spaghetti-code of needlessly activating objects)不是活动的,则您的方法将不起作用。

您的问题是因为Excel --no-commit仅相对于--amend存在,所以当您执行ws时,实际上是在Selection上删除某些内容,与ActiveSheet相同!

我已经对此进行了测试,并且可以通过按钮(在另一张纸上)调用或在IDE中从 F5 手动调用时起作用。

Selection.Delete