
[英].find() triggers run-time error 91 even though all variables are set VBA possibly due to bad references
[英]Run-Time error '3048' happening even though I close connections
我遇到了一个我以前从未见过的错误。 我一直看到这个:
运行时错误“3048”:
无法再打开任何数据库。
谷歌搜索后,似乎当有非常复杂的 forms 有很多列表或组合框,它们的源作为表/查询时会发生这种情况。 但是,我已经有一段时间没有更改这些 forms 了,我突然看到了这一点。 另外,我的 forms 真的没有那么复杂,通常只是一个列表,可能只有 1 或 2 个组合框。 我昨天刚开始看到这个错误(2/2/22)
几乎在所有情况下,我都使用以下代码访问表:
Dim rst As Recordset: Set rst = CurrentDb.OpenRecordset("table name or SQL statement")
然后,我将使用类似的方式访问数据,无论是 AddNew、Edit,还是只是循环通过记录集。
With rst
.AddNew
.Fields("name") = "Value"
End With
或者
Do Until rst.EOF
'Do something
.MoveNext
Loop
而且我已经仔细检查过每次打开记录集时都会关闭它
rst.Close
Set rst = Nothing
但是,我现在一直看到该错误。 是否有其他方法可以关闭这些记录集以正确关闭连接? 我猜打开这些会导致一些我不知道的东西挥之不去。
我现在唯一的解决方案是完全重新启动我的电脑,然后我可以在再次看到错误之前使用它一段时间。
谢谢你的帮助!
编辑:当我收到该错误时,我什至无法关闭 Access 中的所有内容并手动打开一个表来查看它。 我收到此错误消息
保留错误(-1104); 没有针对此错误的消息。
在将 Office 365 更新到最新版本(221,内部版本 14827.20158)后,我也遇到了这些问题。 当我关闭 Access 应用程序并重新打开它时,我立即收到错误消息。 然后我首先必须重新启动我的计算机才能使应用程序正常工作,直到它达到最大连接数。
在 Microsoft Access 版本 2013 或更高版本中打开早期版本(.mdb 格式)的数据库时,您可能会遇到错误“无法打开使用以前版本的应用程序创建的数据库”。
您可以通过将旧的数据库文件格式 (.mdb) 转换为 .accdb 文件格式来修复该错误。
要解决此问题,Microsoft 建议在 Access 2007 或更高版本中打开 Access 数据库 (MDB),然后将其保存为可在 Access 2013 或更高版本中打开的文件格式。
按照以下链接执行将 .mdb 文件转换为 .accdb 文件格式的步骤:
此致,
爱丽丝
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.