excel - "Block if without end if"错误VBA

标签 excel vba

我尝试查看其他答案,但似乎没有什么真正能帮助我。正如标题所述,我收到“如果没有结束则阻止”错误。我试图放入一个条件语句,如果满足则结束子程序。更具体地说,我正在格式化一次只能格式化一项作业的数据。如果确定电子表格中有多个作业,我想自动结束子进程。这是我到目前为止所得到的。

Sub SUBNAMEHERE

(Lots of other code)

JobNo = (code that figures out how many jobs there are)
If JobNo > 1 Then
    MsgBox (warning message)
    End Sub
End If

(The rest of the code)

如果有人能帮助我,我将不胜感激。

最佳答案

尝试Exit Sub而不是End Sub

当您说End Sub时,您是在告诉VB您已经完成了例程的定义。因此,如果您在此之前没有结束 If,它将被视为不完整。

当然,即使您确实在此之前结束了If,您几乎肯定会遇到有关函数外部代码的错误。 (我不太了解 VBA...但这就是大多数 VB 的工作方式。)

关于excel - "Block if without end if"错误VBA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25017905/

相关文章:

c# - 从 C# 创建并写入 Excel 文件

vba - `Is` 对于指向同一单元格的两个范围变量,运算符不返回 true

windows - 安装 32 位和 64 位客户端时,获取 MS Office 2013(32 位)Excel 和 Access 以连接到 Oracle 数据库

excel - 如何根据Excel中的条件替换单元格的文本

excel - Powerpoint VBA - 在嵌入式 Excel OLE 对象中编辑表的列名

excel - 类型与 CDate 不匹配

在 Excel 中使用 Solver 进行 VBA 宏优化不返回最佳变量

vba - Workbook.open 随机失败

sql - Access VBA 字符串以根据匹配条件返回最小和最大日期

excel - 检查 Outlook 中是否存在附件并显示数据