1

こんにちは、What if Scenarios を削除する 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 のみが削除され、エラーが返されます: ワークシート クラスのシナリオ プロパティを取得できません。これは、削除する名前のカウントを持つシナリオがないことを意味します (とにかくだと思います)
もう一度実行すると、最初の 3 番目の ect が再び削除されるため、2 つおきのシナリオがスキップされます。

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 に答える