【问题标题】:Excel opens up VBA editor opens up during processing. No error generatedExcel 打开 VBA 编辑器在处理过程中打开。没有产生错误
【发布时间】:2016-04-25 09:54:42
【问题描述】:

我在 Excel VBA 中编写了一个应用程序,当它使用此功能时,它有时并且有时会停止,打开编辑器并突出显示“end Function”之前的最后一行

Option Explicit

Function Get_Special(i_Row, c_Total, v_code As Variant) As Currency

Dim c_money As Currency
Dim s_Code As String
Dim i_Ctr As Integer

c_money = 0

If Not IsArrayInitialized(v_code) Then
    Get_Special = c_money + c_Total
    Exit Function
End If

For i_Ctr = LBound(v_code) To UBound(v_code)
    Select Case v_code(i_Ctr)

        Case 1 To 10

        Case 11  
             If c_Total = 0 Then c_money = Minimum_Charge(i_Row)
        Case 12  
            c_money = c_money + Plug_Fee(i_Row, Range(rngName(RNM.PLUG)).Column) 
        Case Else

    End Select
Next i_Ctr
'VBA editor opens here, highlighted.  No error message is given pressing F5 causes it to finish with no problem.  

Get_Special = c_money  
End Function

我很茫然

解决以下问题:

IsArrayInitialized 函数具有“On Error resume next”错误处理,然后检查错误编号是否为零,如果不是,则该函数返回 false。

错误是间歇性的。我运行代码 70 次,每次输入不同的数据,但无法再次重现错误。

我仔细检查了,没有设置断点。

【问题讨论】:

  • Case 1 To 10你一无所有?
  • 什么都没有,完全没有错误,编辑器只是弹出,没有消息,Get_Special = c_money 行突出显示。而且它不会一直这样做
  • 案例 1 到 10 将来可能会有一些东西,而且它最初是有的。最终用户收到错误,我能够重新创建一次,但只能重新创建一次。
  • @findwindow 是的,你可以有空箱子,它什么都不做。
  • 调试 -> 清除所有调试点。调试 -> 编译。然后保存文件。有时存在幻像调试断点。

标签: vba excel


【解决方案1】:

调试 -> 清除所有调试点。 调试 -> 编译。然后保存文件。 有时存在幻像调试断点。

【讨论】:

    猜你喜欢
    • 2018-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多