运行时错误'2501'

时间:2011-01-13 17:32:40

标签: vba ms-access runtime-error

我在表单上遇到运行时错误'2501'。有没有人知道为什么会发生这种情况以及如何解决这个问题?

通过以下代码调用报告:

Private Sub Command92_Click()
    DoCmd.SetWarnings Off
    ''# get current reqid and version number
    DoCmd.OpenQuery "NewReqVersion", acViewNormal

    Dim NewReqID As Integer
    Dim NewVerID As Integer

    NewReqID = Me.Text58
    NewVerID = Me.Version + 1
    [Forms]![UWReviewForm].[StatusID] = 99
    On Error Resume Next
    **DoCmd.Save acForm, "UWReviewForm"**

    DoCmd.OpenForm "NewReqVersionForm", acNormal
    DoCmd.GoToRecord acDataForm, "NewReqVersionForm", acLast
End Sub

Private Sub StatusID_Change()
    Me.LastModifiedTimeStamp = Now()
End Sub

2 个答案:

答案 0 :(得分:2)

如果数据库出现问题,则在调用OpenForm时可能会出现错误2501。您能否请按照以下链接中的标题“从腐败中恢复”和“症状:无法打开表单或报告”进行操作?

MS Access - Recovering from corruption

答案 1 :(得分:0)

就我而言,我有一个链接到外部数据源的表,这是另一个Access数据库。我曾尝试将该数据库应用程序拆分为其数据库组件和UI组件,并决定恢复更改。在该行的某处,这已损坏到我的原始Access应用程序和外部Access数据源之间的链接。我可以通过尝试在我的原始Access应用程序中打开链接表来验证这一点,但它给出了一个错误。

我的解决方案是从Access应用程序中删除链接表并再次导入它。在此之后,我的问题解决了。之前无法打开的表单基于包含此外部数据源的查询。