You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ms Access表单无法显示空白页录入新记录的解决方案问询

解决方案
  • 优先修改表单的内置属性,无需代码即可实现打开即空白录入:打开表单的设计视图,在「数据」选项卡下找到「数据输入」属性,设置为是。该属性开启后,表单打开时会自动跳转到新空白记录,不会加载已有的历史记录,完全匹配你的需求。
  • 替换不稳定的DoCmd.GoToRecord写法,改用记录集直接添加新记录,同时把逻辑从Form_Load事件迁移到Form_Open事件(Load事件触发时表单记录集尚未完全初始化,容易触发OLE相关报错),修改后代码示例如下:
Private Sub Form_Open(Cancel As Integer)
    On Error Resume Next ' 加错误捕获避免偶发报错
    Dim rs As DAO.Recordset
    Set rs = Me.RecordsetClone
    rs.AddNew
    Me.Bookmark = rs.Bookmark
    rs.Close
    Set rs = Nothing
    
    If Not IsNull(Me.SubjectID) Then
        Forms!Data_Pro_Patient_Entry![my_rep].Visible = True
        Call Disable_Schedule_Generation
    Else
        Forms!Data_Pro_Patient_Entry![my_rep].Visible = False
        Call generate_auto_id
    End If
End Sub
  • 排查表单上的OLE/ActiveX控件加载逻辑:如果表单上插入了未注册、或者加载慢的ActiveX控件(比如日历控件、第三方上传控件等),会在Load事件执行时还没完成初始化,调用跳转记录的代码就会触发通信报错。可以把控件的可见性、初始化逻辑延后到Form_Current事件执行,或者移除不必要的第三方控件改用Access原生控件。
  • 如果你需要保留加载历史记录的能力、仅默认跳转到新记录,不要修改「数据输入」属性,在上面的代码基础上完善错误捕获规则即可,避免偶发的OLE报错中断代码执行。

内容的提问来源于stack exchange,提问作者Zuva Gwata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 15:21:00