7

我正在尝试编写一个简单的宏来将 1 添加到单元格的当前值:

Sub add()
    MsgBox Selection.Value
    Selection.Value = Selection.Value + 1
End Sub

当我单击(数字)单元格并尝试运行宏时,我收到以下错误消息:

Cannot Execute in Break Mode

我错过了什么?

4

3 回答 3

13

您已经在执行一个宏并且以某种方式停止了它的执行(例如,由于未处理的错误或因为您在执行期间按下了Ctrl- Break)。在这种状态下,您不能执行另一个宏。

在 Visual Basic 编辑器中,您需要按下停止按钮: 在此处输入图像描述

然后就可以运行宏了。

如果您想了解当前执行的停止位置,请右键单击代码并选择Show Next Statement。如果您然后按F8,您可以单步执行代码。F5继续执行。

于 2013-02-18T10:54:08.097 回答
1

您应该检查单元格中的值是否为数字。例子

Sub add()
    If IsNumeric(Selection.Value) Then
        Selection.Value = Selection.Value + 1
    Else
        MsgBox ("Not a value selected")
    End If
End Sub
于 2013-02-18T11:25:48.570 回答
-3
Sub Lower()
    Range ("e3"), Value = Range("e3"), Value - 1
End Sub

Sub Higher()
    Range ("e3"), Value = Range("e3"), Value + 1
End Sub
于 2016-12-30T07:34:19.063 回答