Excel崩溃,尝试连续运行类似的VBA宏

问题描述

我对VBA还是比较陌生,但是我已经能够找到适合我正在从事的项目的大多数需求的代码和解决方案。但是,我无法找到以下问题的解决方案。

我在同一目录中有4个DBF文件,这些文件链接到一个program \ application,该程序将它们中的数据导入到程序中。我正在尝试将数据从Excel工作簿导出到这些DBF文件。

我发现以下代码适合我的情况。为了使其正常工作,我发现首先需要通过使用Access打开和关闭每个DBF文件来创建一个.accdb文件。然后,我用4组相似的代码创建了4个宏,以将数据导出到4个DBF(.accdb)文件中。我还将代码中的Microsoft.Jet.OLEDB.4.0更新为Microsoft.ACE.OLEDB.16.0,并启用了Microsoft ActiveX数据对象6.1库。

Sub ADOFromExcelToDBF()
    Dim cn As ADODB.Connection,rs As ADODB.Recordset,r As Long
    ' connect to the Access database
    Set cn = New ADODB.Connection
    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
        "Data Source=C:\FolderName\DataBaseName.dbf;"    
    ' open a recordset
    Set rs = New ADODB.Recordset
    rs.Open "TableName",cn,adOpenKeyset,adLockOptimistic,adCmdTable  
    ' all records in a table
    r = 3 ' the start row in the worksheet
    Do While Len(Range("A" & r).Formula) > 0 
    ' repeat until first empty cell in column A
        With rs
            .AddNew ' create a new record
            ' add values to each field in the record
            .Fields("FieldName1") = Range("A" & r).Value
            .Fields("FieldName2") = Range("B" & r).Value
            .Fields("FieldNameN") = Range("C" & r).Value
            ' add more fields if necessary...
            .Update ' stores the new record
        End With
        r = r + 1 ' next row
    Loop
    rs.Close
    Set rs = Nothing
    cn.Close
    Set cn = Nothing
End Sub

我遇到的问题是,尽管所有宏都单独工作,但是如果我尝试一个接一个地运行每个宏,Excel就会崩溃。尝试运行第二个宏(没有错误消息-Excel关闭并且当我重新打开它时,它说它已经恢复了工作簿)时,一个宏(无论哪个宏)都将在Excel崩溃之前始终起作用。

我发现它们都可以正常运行而不会崩溃的唯一方法是在运行每个宏后关闭并重新打开Excel。

我想知道是否有人知道为什么会发生这种情况以及是否有解决方案?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...