1

你好,我写了一个 VBA 宏来删除我的假设场景我有 84 个,它们被命名为 1,2,3,4,....,84 所以我写了这段代码

Sub Dismantle()
For Count = 1 To 84
    ActiveSheet.Scenarios(Count).Delete
Next

End Sub

但它只删除场景 1,3,5,7,9.....,83 然后返回错误:无法获取工作表类的场景属性。这意味着没有名称计数可以删除的场景(我认为无论如何)
再次运行它会再次删除前三分之一等,因此它会跳过每隔一个场景。

4

1 回答 1

3
Sub Dismantle()
    For Count = 84 to 1 step -1
        ActiveSheet.Scenarios(Count).Delete
    Next
End Sub

你是如此接近:-)

或者,为了获得更大的灵活性:

Do While ActiveSheet.Scenarios.Count > 0
    ActiveSheet.Scenarios(1).Delete()
Loop
于 2013-07-26T23:28:42.107 回答